watir webdriver browsermob/proxy har file почти пуст
Здравствуйте, я хочу поймать все перенаправления, когда они произошли. Допустим, сначала он идет на 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 работает, но хар маленький Firefox 47 2.0.0 работает хар файл больше firefox 47 2.1.0 работает хар средний средний Firefox 47 2.1.1 работает и он самый большой
Затем я проверил также Firefox 46 и получил те же результаты....
Я помню пару лет назад я получил перенаправления с теми же кодами и теперь могу получить его:(
1 ответ
Вы пытались создать WebDriver::Proxy через Browsermob.
например
profile.proxy = @@proxy.selenium_proxy :http, :ssl
Кроме того, сам BrowsermobProxy обычно работает на 9090, поэтому я ожидал бы столкновения портов при попытке создать прокси на 9090. Если вы используете приведенный выше код, вам не нужно указывать порт.
например
@@proxy = server.create_proxy