linux安装chrome利用headlessChrome抓取数据

添加chrome yum源

vi /etc/yum.repos.d/chrome.repo

[google64]
name=Google  x86_64
baseurl=http://dl.google.com/linux/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

安装并验证chrome版本

yum install google-chrome-stable -y
[root@LINUX]# google-chrome --version
	Google Chrome 87.0.4280.88 

安装 selenium

pip install selenium

在py文件中引用

	from selenium import webdriver
	from selenium.webdriver.chrome.options import Options
	
	chrome_options = Options()
	chrome_options.add_argument("--headless")	# 可不依赖图形界面使用chrome进行页面访问
	chrome_options.add_argument("--disable-dev-shm-usage")	# 不配置则使用/dev/shm进行缓存
	chrome_options.add_argument("--no-sandbox")
	driver = webdriver.Chrome(options=chrome_options)
	driver.set_page_load_timeout(30)
	driver.set_script_timeout(10)
	driver.get('http://www.baidu.com')

错误处理

selenium.common.exceptions.WebDriverException: Message: unknown error: session deleted because of page crash

一般是缓存空间不够了,使用了"--disable-dev-shm-usage"参数的话,缓存空间为系统的tmp目录,检查一下该目录是否有大量.com.google开头的缓存目录,全部删除即可

最后更新于