吴先森
为退烧而生
吴先森的笔记
Python使用Chrome无头模式
Python使用Chrome无头模式

最近做网站时光机,需要加载网页完整内容,但是因为某些网站需要加载js才能显示完整网站内容,而且Python自带的requests不能加载js,所以…我把目光转向了Chrome HeadLess

以下是ChromeHeadless的介绍

Headless Chrome 是 Chrome 浏览器的无界面形态,可以在不打开浏览器的前提下,使用所有 Chrome 支持的特性运行你的程序。相比于现代浏览器,Headless Chrome 更加方便测试 web 应用,获得网站的截图,做爬虫抓取信息等。相比于出道较早的 PhantomJS,SlimerJS 等,Headless Chrome 则更加贴近浏览器环境。

如何安装呢?其实很简单

首先,直接输入以下内容安装GoogleChrome

sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub  | sudo apt-key add -
sudo apt-get update
sudo apt-get install google-chrome-stable

安装完成后,输入‘google-chrome –version’如果有输出就安装成功了

ChromeDriver下载地址1:http://chromedriver.storage.googleapis.com/index.html

ChromeDriver下载地址2:http://npm.taobao.org/mirrors/chromedriver/

对照的下载就好了,一般直接下载最新版就好了

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')

driver = webdriver.Chrome(executable_path='/your/path/chromedriver',
                          chrome_options=chrome_options)

driver.get('https://www.wunote.cn')
print(driver.page_source)
driver.close()

如果出现以下错误,直接pip3 install selemium即可

再次运行,即可成功获取网页源码

哎,又水了一篇文章…

吴先森

文章作者

为退烧而生!

发表评论

textsms
account_circle
email

吴先森的笔记

Python使用Chrome无头模式
最近做网站时光机,需要加载网页完整内容,但是因为某些网站需要加载js才能显示完整网站内容,而且Python自带的requests不能加载js,所以...我把目光转向了Chrome HeadLess 以下是Chro…
扫描二维码继续阅读
2020-04-09