ps:默认已安装好python3及对应pip,如未安装,自行百度,本文从安装selenium开始配置
1. 安装selenium
pip3 install selenium -i https://mirrors.aliyun.com/pypi/simple/
2. 安装google-chrome
首先下载最新版google-chrome安装包:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
安装:
sudo dpkg -i google-chrome-stable_current_amd64.deb
此时可能会报错:
(Reading database … 29779 files and directories currently installed.)
Preparing to unpack google-chrome-stable_current_amd64.deb …
Unpacking google-chrome-stable (123.0.6312.86-1) over (104.0.5112.101-1) …
dpkg: dependency problems prevent configuration of google-chrome-stable:
google-chrome-stable depends on fonts-liberation; however:
Package fonts-liberation is not installed.
google-chrome-stable depends on libatk-bridge2.0-0 (>= 2.5.3); however:
Package libatk-bridge2.0-0 is not installed.
google-chrome-stable depends on libatk1.0-0 (>= 2.2.0); however:
Package libatk1.0-0 is not installed.
google-chrome-stable depends on libatspi2.0-0 (>= 2.9.90); however:
Package libatspi2.0-0 is not installed.
google-chrome-stable depends on libcairo2 (>= 1.6.0); however:
Package libcairo2 is not installed.
google-chrome-stable depends on libcups2 (>= 1.6.0); however:
Package libcups2 is not installed.
google-chrome-stable depends on libdrm2 (>= 2.4.75); however:
Package libdrm2 is not installed.
google-chrome-stable depends on libgbm1 (>= 17.1.0~rc2); however:
Package libgbm1 is not installed.
google-chrome-stable depends on libgtk-3-0 (>= 3.9.10) | libgtk-4-1; however:
Package libgtk-3-0 is not installed.
Package libgtk-4-1 is not installed.
google-chrome-stable depends on libnspr4 (>= 2:4.9-2~); however:
Package libnspr4 is not installed.
google-chrome-stable depends on libnss3 (>= 2:3.35); however:
Package libnss3 is not installed.
google-chrome-stable depends on libpango-1.0-0 (>= 1.14.0); however:
Package libpango-1.0-0 is not installed.
google-chrome-stable depends on libu2f-udev; however:
Package libu2f-udev is not installed.
google-chrome-stable depends on libvulkan1; however:
Package libvulkan1 is not installed.
google-chrome-stable depends on libxcomposite1 (>= 1:0.4.4-1); however:
Package libxcomposite1 is not installed.
google-chrome-stable depends on libxdamage1 (>= 1:1.1); however:
Package libxdamage1 is not installed.
google-chrome-stable depends on libxfixes3; however:
Package libxfixes3 is not installed.
google-chrome-stable depends on libxkbcommon0 (>= 0.5.0); however:
Package libxkbcommon0 is not installed.
google-chrome-stable depends on libxrandr2; however:
Package libxrandr2 is not installed.
google-chrome-stable depends on xdg-utils (>= 1.0.2); however:
Package xdg-utils is not installed.
dpkg: error processing package google-chrome-stable (–install):
dependency problems - leaving unconfigured
Processing triggers for mime-support (3.64ubuntu1) …
Errors were encountered while processing:
google-chrome-stable
执行命令:
apt --fix-broken install
执行完成后重新执行:
sudo dpkg -i google-chrome-stable_current_amd64.deb
3. 安装chromedriver
先查看安装成功的google-chrome版本:
google-chrome --version
下载chromedriver安装包,与google-chrome版本保持一致
wget https://storage.googleapis.com/chrome-for-testing-public/{此处替换为google-chrome版本}/linux64/chromedriver-linux64.zip
解压并关联/usr/bin
unzip chromedriver-linux64.zip
cd chromedriver-linux64
mv chromedriver /usr/bin
4. selenium脚本注意事项
options中必须添加参数:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
#必须添加下列参数,否则无法打开chrome浏览器
options = Options()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
driver = webdriver.Chrome(options=options)
#打开baidu,测试获取百度首页新闻按钮text
driver.get("https://www.baidu.com")
print(driver.find_element_by_xpath('//*[@id="s-top-left"]/a[1]').text)
driver.quit()
执行结果: