我一直在玩Watir和Tor浏览器而我无法让他们工作。 但是,我打开了正确的浏览器,我无法打开网站。
我的代码:
Selenium::WebDriver::Firefox.path = '\path\Tor Browser\Start Tor Browser.exe'
driver = Selenium::WebDriver.for :firefox
browser = Watir::Browser.new :firefox, :driver => driver
这会弹出一个消息框,其中显示:
无法加载您的Firefox个人资料。它可能缺失或无法访问。
正确的浏览器也会打开,但网站没有。
我也尝试过:
Selenium::WebDriver::Firefox.path = '\path\Tor Browser\Browser\firefox.exe'
driver = Selenium::WebDriver.for :firefox
browser = Watir::Browser.new :firefox, :driver => driver
有了这个,消息框不会出现,但仍然没有加载网站。
我不确定,问题是在我的代码中还是在浏览器中。 非常感谢您的帮助!
答案 0 :(得分:3)
启动Tor然后运行此操作,假设您的socks端口为9050
require 'watir-webdriver'
profile = Selenium::WebDriver::Firefox::Profile.new
profile['network.proxy.socks'] = "127.0.0.1"
profile['network.proxy.socks_port'] = 9050
profile['network.proxy.type'] = 1
$browser = Watir::Browser.new :firefox, :profile => profile
$browser.goto "whatsmyip.org"
答案 1 :(得分:0)
Firefox和Tor不是同一个浏览器。 Watir使用webdriver API来控制浏览器。您无法使用Firefox webdriver API来控制其他浏览器。
在您的第二个示例中,浏览器不会打开网站,但您没有告诉他。你应该添加:
browser.goto('http://my.example.com')
并且不要忘记在代码末尾添加browser.quit
以关闭浏览器。