Selenium-WebDriver不能与代理一起使用

时间:2012-07-03 17:56:07

标签: firefox ubuntu rubygems selenium-webdriver

我有几台开发机器。一个有效,另一个没有。

不起作用的设置:

主持人:四人 Firefox:13.0.1 Ubuntu:12.04桌面 Ruby:1.8.7(2011-06-30 patchlevel 352) RubyGems:1.8.15 Selenium-WebDriver:2.24.0 代理人:192.168.1.70:8118

确实有效的设置:

主持人:dev Firefox:13.0 Ubuntu:12.04桌面 Ruby:1.8.7(2011-06-30 patchlevel 352) RubyGems:1.8.24 Selenium-WebDriver:2.22.2 代理人:127.0.0.1:8118

在无法正常工作的设置中(主机四核)Firefox会弹出,但会记录有关意外503响应的错误(我使用Privoxy,并且在无效的机器上我将代理服务器提供给整个局域网,所以我的代理是192.168.1.70:8118)。

当Ruby脚本崩溃时,Firefox会打开并且不会关闭。所以我已经能够使用该Firefox实例上网冲浪了。这很好。所以Firefox能够启动并通过Privoxy就好了。 Privoxy 503页面永远不会显示在Firefox上我只看到日志中弹出。

我也尝试过使用Chrome的这个脚本(主机四核)。日志中的错误相同,但Chrome从不为我弹出一个窗口。我认为这是由于两个浏览器处理代理的方式不同。

在主机dev上,这个脚本运行正常。当代理是127.0.0.1:8118(它是本地Privoxy)时,脚本可以正常工作。由于主机四元架上的Privoxy可用于整个LAN,因此我将主机dev上的代理设置更改为192.168.1.70:8118。一旦我这样做,我在主机dev上运行脚本并在终端中获得Privoxy错误,但是Firefox打开并执行了脚本的其余部分,好像错误从未发生过一样。

我的假设是,这是我的设置中导致问题的细微差别。但我不知道它是否是Firefox 13.0.1。 vs 13.0或我的RubyGems版本或我的Selenium-WebDriver版本。

我认为理想情况下我应该在两台机器上都有相同的设置。但哪种设置更好?我更喜欢能够使用最新的Firefox,因为我厌倦了告诉Ubuntu中的Update Manager不会每天都执行所有的Firefox更新。当我运行apt-get update / upgrade时,我不想手动删除所有Firefox更新。也就是说,如果最好的设置是使用Firefox 10,Ruby 1.8.7,RubyGems ...那么我只需要设置一些我不打扰运行apt-get update / upgrade的VM,这样我就有了更多环境稳定。

由于

1 个答案:

答案 0 :(得分:0)

原来这是Privoxy的前瞻性设定。我必须设置127的转发。。* / in / etc / privoxy / config。我已经设置了转发192.168。 /并且认为这很好,因为代理IP是192.168.1.70但是它还不够好。