使用phantomjs代理(selenium webdriver)

时间:2016-07-31 04:28:57

标签: python selenium proxy phantomjs

我正在使用phantomJS作为硒的驱动剂。我的代码是用python编写的。我遵循类似问题的建议,并使用以下内容:

service_args = [
    '--proxy=78.23.244.145:80',
    '--proxy-type=http',
    ]
driver = webdriver.PhantomJS(service_args=service_args)
driver.get('http://www.whatismyip.com/')

但是,当我打印html时,几乎没有出现任何内容:

print driver.page_source

输出:

<html><head></head><body></body></html>

如果我只是通常打电话给phantomJS,网站会照常显示:

driver = webdriver.PhantomJS()

作为参考,我已经尝试过这个列表中的一堆代理:

http://proxylist.hidemyass.com/search-1291972#listable

我想知道如何在使用代理时正确显示页面。任何帮助,将不胜感激!

1 个答案:

答案 0 :(得分:5)

我怀疑你使用的代理是不正确的。我尝试了以下使用代理在Windows 8中表现良好的情况。

from selenium.webdriver.common.proxy import *
from selenium import webdriver
from selenium.webdriver.common.by import By
phantomjs_path = r"E:\Software & Tutorial\Phantom\phantomjs-2.1.1-windows\bin\phantomjs.exe"
service_args = [
    '--proxy=217.156.252.118:8080',
    '--proxy-type=https',
    ]

driver = webdriver.PhantomJS(executable_path=phantomjs_path,service_args=service_args)
driver.get("https://www.google.com.bd/?gws_rd=ssl#q=what+is+my+ip")
print driver.page_source.encode('utf-8')
print "="*70
print driver.title
driver.save_screenshot(r"E:\Software & Tutorial\Phantom\test.png")
driver.quit()

查看保存的图像(test.png)并查看状态。如果使用ip被列入黑名单谷歌提示验证码框看到该图像!! IP已被更改!!