基于linux配置selenium环境并实现运行
一、在linux中使用selenium
1、安装chrome
用下面的命令安装GoogleChrome
yuminstallhttps://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
也可以先下载至本地,然后安装
wgethttps://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
yuminstall./google-chrome-stable_current_x86_64.rpm
安装必要的库
yuminstallmesa-libOSMesa-develgnu-free-sans-fontswqy-zenhei-fonts
2、安装chromedriver(末尾附chrome和chromedriver的对应版本)
chrome官网
wgethttps://chromedriver.storage.googleapis.com/2.38/chromedriver_linux64.zip
淘宝源(推荐)
wgethttp://npm.taobao.org/mirrors/chromedriver/2.41/chromedriver_linux64.zip
将下载的文件解压,放在如下位置
unzipchromedriver_linux64.zip
mvchromedriver/usr/bin/
给予执行权限
chmod+x/usr/bin/chromedriver
3、运行代码,查看是否成功(python下)
fromseleniumimportwebdriver
driver=webdriver.Chrome()
------------2019年兼容版本对照表-----------
ChromeDriver78.0.3904.11(2019-09-12)---------SupportsChromeversion78
ChromeDriver77.0.3865.40(2019-08-20)---------SupportsChromeversion77
ChromeDriver76.0.3809.12(2019-06-07)---------SupportsChromeversion76
ChromeDriver75.0.3770.8(2019-04-29)---------SupportsChromeversion75
ChromeDriverv74.0.3729.6(2019-03-14)--------SupportsChromev74
ChromeDriverv2.46(2019-02-01)----------SupportsChromev71-73
二、chrome无界面模式运行
fromseleniumimportwebdriver fromselenium.webdriver.chrome.optionsimportOptions chrome_options=Options() chrome_options.add_argument('--no-sandbox')#解决DevToolsActivePort文件不存在的报错 chrome_options.add_argument('window-size=1920x3000')#指定浏览器分辨率 chrome_options.add_argument('--disable-gpu')#谷歌文档提到需要加上这个属性来规避bug chrome_options.add_argument('--hide-scrollbars')#隐藏滚动条,应对一些特殊页面 chrome_options.add_argument('blink-settings=imagesEnabled=false')#不加载图片,提升速度 chrome_options.add_argument('--headless')#浏览器不提供可视化页面.linux下如果系统不支持可视化不加这条会启动失败 #创建浏览器对象 driver=webdriver.Chrome(executable_path=path,chrome_options=chrome_options)#executable_path:浏览器驱动路径 driver.get(url)
三、无界面模式下下载文件
以前,以无头模式运行的Chromedriver无法正确下载文件,原因是它稀疏地解析提供给它的首选项文件。无头Chrome团队的工程师建议使用DevTools的“Page.setDownloadBehavior”来解决此问题。此变更列表实现此修复程序。下载的文件默认为当前目录,可以在实例化chromedriver实例时使用download_dir进行设置。还添加了测试以确保正确的下载功能。
params={'behavior':'allow','downloadPath':r'C:\Users\Debanjan.B\Downloads'}
driver.execute_cdp_cmd('Page.setDownloadBehavior',params)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。