您好,我想在它们发生时捕获所有重定向。让我们先说它去 example.com 然后它重定向到 example1.com,然后是 example3.com
我正在使用 watir webdriver 和 browsermob/proxy。我尝试使用 google.com,它不会重定向,但 har 文件应该比我得到的要多得多。
他是代码:
server = BrowserMob::Proxy::Server.new("/home/da/Downloads/browsermob-proxy-2.0.0/bin/browsermob-proxy") #=> #<BrowserMob::Proxy::Server:0x000001022c6ea8 ...>
server.start
@@proxy = server.create_proxy(9090)
puts @@proxy.inspect
profile = Selenium::WebDriver::Firefox::Profile.new
puts "going on #{dv}"
profile['general.useragent.override'] = dv['useragent']
#'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:27.0) Gecko/20100101 Firefox/27.0'#device['useragent']
puts dv['useragent']
profile.proxy = Selenium::WebDriver::Proxy.new :http => 'localhost:9090', :ssl => 'localhost:9090'#9091
time = Time.now.to_i #Time.now.getutc
puts APP_ROOT
@@proxy.new_har time
@@b = Watir::Browser.new :firefox, :profile => profile
@@har = @@proxy.har #=> #<HAR::Archive:0x-27066c42d7e75fa6>
#har.entries.first.request.url
#har.entries.first.request.url #=> "http://google.com"
@@b.goto "google.com"
puts @@har.inspect
@@har.save_to "#{APP_ROOT}/har/google.har"
exit
这就是我得到的
{"log":{"version":"1.2","creator":{"name":"BrowserMob Proxy","version":"2.0","comment":""},"browser":{"name":"IE","version":"11.0","comment":""},"pages":[{"id":"1479767515","startedDateTime":"2016-11-21T23:31:56.561+01:00","title":"","pageTimings":{"comment":""},"comment":""}],"entries":[{"pageref":"1479767515","startedDateTime":"2016-11-21T23:32:02.146+01:00","request":{"method":"GET","url":"https://tiles.services.mozilla.com/v3/links/fetch/en-US/release","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"queryString":[],"headersSize":370,"bodySize":0,"comment":""},"response":{"status":303,"statusText":"SEE OTHER","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"content":{"size":0,"mimeType":"text/html; charset=utf-8","comment":""},"redirectURL":"","headersSize":266,"bodySize":0,"comment":""},"cache":{},"timings":{"blocked":101,"dns":266,"connect":238,"send":1,"wait":205,"receive":832,"ssl":0,"comment":""},"serverIPAddress":"52.32.150.180","comment":"","time":1643},{"pageref":"1479767515","startedDateTime":"2016-11-21T23:32:02.791+01:00","request":{"method":"POST","url":"https://location.services.mozilla.com/v1/country?key=7e40f68c-7938-4c5d-9f95-e61647c213eb","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"queryString":[{"name":"key","value":"7e40f68c-7938-4c5d-9f95-e61647c213eb"}],"headersSize":419,"bodySize":2,"comment":""},"response":{"status":200,"statusText":"OK","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"content":{"size":49,"mimeType":"application/json; charset=UTF-8","comment":""},"redirectURL":"","headersSize":227,"bodySize":49,"comment":""},"cache":{},"timings":{"blocked":0,"dns":9,"connect":45,"send":17,"wait":60,"receive":511,"ssl":0,"comment":""},"serverIPAddress":"52.19.86.22","comment":"","time":642}],"comment":""}}
我尝试使用上面提到的 example1.com 到 exmple2.com 的重定向,而 har 文件并没有给出太多:(
这是我进行的一些测试:
好的,这里有一些测试结果:firefox 49 2.0.0 根本不起作用 firefox 49 2.1.2 根本不起作用 firefox 48 2.1.2 根本不起作用
firefox 47 2.1.2 可以工作,但 har 很小 firefox 47 2.0.0 可以工作 har 文件更大 firefox 47 2.1.0 可以工作 har 是中大 firefox 47 2.1.1 可以工作而且最大
然后我也用firefox 46进行了测试并得到了相同的结果......
我记得几年前我也得到了具有相同代码的重定向,现在可以得到它:(