实验环境:kaggle notebook、colab notebook
1、安装chrome
!wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
!sudo dpkg -i google-chrome-stable_current_amd64.deb
!sudo apt-get install -f
!export QT_QPA_PLATFORM=offscreen
!sudo apt-get install -f
!sudo dpkg -i google-chrome-stable_current_amd64.deb
!google-chrome --version
安装字体
!sudo apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy
2、安装chromedriver
!wget https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.183/linux64/chromedriver-linux64.zip
!unzip chromedriver-linux64.zip
!sudo mv chromedriver-linux64 /usr/local/bin
!sudo chmod +x /usr/local/bin/chromedriver-linux64/chromedriver
3、安装selenium
!pip install selenium
4、测试脚本(jupyter notebook版,无头浏览器模式)
import tempfile
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
#from webdrivermanager_cn import ChromeDriverManager
import time
# 自动下载驱动
#driver_path = ChromeDriverManager().install()
# 创建临时用户数据目录
user_data_dir = tempfile.mkdtemp()
# 设置 Chrome 启动参数
options = Options()
options.add_argument(f"--user-data-dir={user_data_dir}")
options.add_argument("--no-sandbox") # Linux 通常需要
options.add_argument("--disable-dev-shm-usage") # Linux 通常需要
options.add_argument("--headless") # 如不需要图形界面,可添加此项
# 启动浏览器
service = Service(executable_path='/usr/local/bin/chromedriver-linux64/chromedriver')
driver = webdriver.Chrome(service=service, options=options)
# 使用浏览器
driver.get("https://www.baidu.com")
print(driver.title)
time.sleep(3)
#截屏
driver.save_screenshot(filename="baidu.png")
time.sleep(3)
driver.quit()