这篇文章主要介绍硒+ python如何配置chrome浏览器,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
<强> 1。背景强>
在使用硒浏览器渲染技术,爬取网站信息时,默认情况下就是一个普通的纯净的chrome浏览器,而我们平时在使用浏览器时,经常就添加一些插件,扩展,代理之类的应用。相对应的,当我们用chrome浏览器爬取网站时,可能需要对这个chrome做一些特殊的配置,以满足爬虫的行为。
常用的行为有:
- <李>
禁止图片和视频的加载:提升网页加载速度。
李> <李>添加代理:用于翻墙访问某些页面,或者应对IP访问频率限制的反爬技术。
李> <李>使用移动头:访问移动端的站点,一般这种站点的反爬技术比较薄弱。
李> <李>添加扩展:像正常使用浏览器一样的功能。
李> <李>设置编码:应对中文站,防止乱码。
李> <李>阻止JavaScript执行。
李> <李>………
李><强> 2。环境强>
- <李> python 3.6.1
李> <李>
系统:这个
李> <李>IDE: pycharm
李> <李>安装过chrome浏览器
李> <李>配置好chromedriver
李> <李>硒3.7.0
李> <强> 3。chromeOptions 强>
chromeOptions是一个配置chrome启动是属性的类。通过这个类,我们可以为铬配置如下参数(这个部分可以通过硒源码看到):
- <李>
设置铬二进制文件位置(binary_location)
李> <李>添加启动参数(add_argument)
李> <李>添加扩展应用(add_extension add_encoded_extension)
李> <李>添加实验性质的设置参数(add_experimental_option)
李> <李>设置调试器地址(debugger_address)
李>源代码:
#,。\ Lib \网站\硒\ webdriver \ \ options.py铬 class 选项(对象): def 才能__init__(自我): ,,,#,设置,chrome 二进制文件位置 ,,,self._binary_location =, & # 39; & # 39; ,,,#,添加启动参数 ,,,self._arguments =, [] ,,,#,添加扩展应用 ,,,self._extension_files =, [] ,,,self._extensions =, [] ,,,#,添加实验性质的设置参数 ,,,self._experimental_options =, {} ,,,#,设置调试器地址 ,,,self._debugger_address =,
没有使用案例:
#,设置默认编码为,utf - 8,也就是中文 得到selenium import  webdriver 时间=options webdriver.ChromeOptions () options.add_argument (& # 39; lang=zh_CN.UTF-8& # 39;) 时间=driver webdriver.Chrome (=chrome_options 选项)
4。常用配置官方网站参考:https://sites.google.com/a/chromium.org/chromedriver/capabilities
4.1。设置编码格式
#,设置默认编码为,utf - 8,也就是中文 得到selenium import  webdriver 时间=options webdriver.ChromeOptions () options.add_argument (& # 39; lang=zh_CN.UTF-8& # 39;) 时间=driver webdriver.Chrome (=chrome_options 选项)
4.2。模拟移动设备
移动设备用户代理表格:http://www.fynas.com/ua
因为移动版网站的反爬虫的能力比较弱
#,通过设置用户代理,用来模拟移动设备 #,比如模拟,android QQ浏览器 options.add_argument(& # 39;用户代理=癕QQBrowser/26, Mozilla/5.0, (Linux;,你,,Android 2.3.7;,应用;,MB200 构建/GRJ22;, CyanogenMod-7), AppleWebKit/533.1, (KHTML, like 壁虎),版本/4.0,Mobile Safari/533.1“& # 39;) #,模拟iPhone 6 options.add_argument(& # 39;用户代理=癕ozilla/5.0, (iPhone;, CPU iPhone OS 9 _1 like Mac OS X), AppleWebKit/601.1.46 (KHTML, like 壁虎),版本/9.0,移动/13 b143 Safari/601.1“& # 39;)
4.3。禁止图片加载
不加载图片的情况下,可以提升爬取速度。
#,禁止图片的加载 得到selenium import  webdriver 时间=chrome_options webdriver.ChromeOptions () prefs =, {“profile.managed_default_content_settings.images":, 2} chrome_options.add_experimental_option (“prefs",首选项) #,启动浏览器,并设置好等 时间=browser webdriver.Chrome (chrome_options=chrome_options) browser.set_window_size (configure.windowHeight, configure.windowWidth),, #,根据桌面分辨率来定,主要是为了抓到验证码的截屏 wait =, WebDriverWait(浏览器,timeout =, configure.timeoutMain)硒+ python如何配置chrome浏览器