1. 首页
  2. 技术知识

基于linux配置selenium环境并实现运行

一、在linux中使用selenium

1、安装chrome

用下面的命令安装Gооgle Chrome

yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

也可以先下载至本地,然后安装

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

yum install ./google-chrome-stable_current_x86_64.rpm

安装必要的库

yum install mesa-libOSMesa-devel gnu-free-sans-fonts wqy-zenhei-fonts

2、安装 chromedriver(末尾附chrome和chromedriver的对应版本)

chrome官网

wget https://chromedriver.storage.googleapis.com/2.38/chromedriver_linux64.zip

淘宝源(推荐)

wget http://npm.taobao.org/mirrors/chromedriver/2.41/chromedriver_linux64.zip

将下载的文件解压,放在如下位置

unzip chromedriver_linux64.zip

mv chromedriver /usr/bin/

给予执行权限

chmod +x /usr/bin/chromedriver

3、运行代码,查看是否成功(python下)

from selenium import webdriver

driver = webdriver.Chrome()

————2022年兼容版本对照表———–

ChromeDriver 78.0.3904.11 (2022-09-12)———Supports Chrome version 78

ChromeDriver 77.0.3865.40 (2022-08-20)———Supports Chrome version 77

ChromeDriver 76.0.3809.12 (2022-06-07)———Supports Chrome version 76

ChromeDriver 75.0.3770.8 (2022-04-29)———Supports Chrome version 75

ChromeDriver v74.0.3729.6 (2022-03-14)——–Supports Chrome v74

ChromeDriver v2.46 (2022-02-01)———-Supports Chrome v71-73

二、chromeX面模式运行

from selenium import webdriver

from selenium.webdriver.chrome.options import Options

chrome_options = Options()

chrome_options.add_argument(‘–no-sandbox’)#解决DevToolsActivePort文件不存在的报错

chrome_options.add_argument(‘window-size=1920×3000’) #指定浏览器分辨率

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)
三、X面模式下下载文件

以前,以无头模式运行的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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持共生网络。

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/107528.html

联系我们