python3 selenium模块Chrome设置代理ip的实现
selenium模块Chrome设置代理ip的实现代码:
from selenium import webdriver
chromeOptions = webdriver.ChromeOptions() # 设置代理
PROXY = "124.206.133.227:80"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server={0}'.format(PROXY))
# 一定要注意,=两边不能有空格,不能是这样--proxy-server = 202.20.16.82:10152
browser = webdriver.Chrome(chrome_options = chromeOptions) # 查看本机ip,查看代理是否起作用
browser.get("http://httpbin.org/ip")
print(browser.page_source) # 退出,清除浏览器缓存
browser.quit()
注意事项:
1,代理IP最好是稳定的固定IP,不要选动态IP。我们常用的爬虫IP是高匿名动态IP,是通过拨号动态产生的,时效性很短,一般在1~3分钟。对于scrapy这种并发度很高,又不需要登录的爬虫来说,非常合适,但是在浏览器渲染类爬虫中并不适用。
2,代理IP的速度。因为selenium爬虫采用的是浏览器渲染技术,本身速度就很慢。如果选择的代理IP速度较慢,就会大大增加爬取的时间。
3,电脑内存要够大。因为chrome占内存较大,在并发度很高的情况下,容易造成浏览器崩溃,也就是程序崩溃。
4,在程序结束时,调用 browser.quit( ) 清除浏览器缓存。