ubunto 22.0使用python3执行selenium脚本

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()

执行结果:
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值