最近做网站时光机,需要加载网页完整内容,但是因为某些网站需要加载js才能显示完整网站内容,而且Python自带的requests不能加载js,所以…我把目光转向了Chrome HeadLess
以下是ChromeHeadless的介绍
Headless Chrome 是 Chrome 浏览器的无界面形态,可以在不打开浏览器的前提下,使用所有 Chrome 支持的特性运行你的程序。相比于现代浏览器,Headless Chrome 更加方便测试 web 应用,获得网站的截图,做爬虫抓取信息等。相比于出道较早的 PhantomJS,SlimerJS 等,Headless Chrome 则更加贴近浏览器环境。
如何安装呢?其实很简单
首先,直接输入以下内容安装GoogleChrome
[bash] 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 [/bash]
安装完成后,输入‘google-chrome –version’如果有输出就安装成功了
ChromeDriver下载地址1:http://chromedriver.storage.googleapis.com/index.html
ChromeDriver下载地址2:http://npm.taobao.org/mirrors/chromedriver/
对照的下载就好了,一般直接下载最新版就好了
[python] 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() [/python]
如果出现以下错误,直接pip3 install selemium即可
再次运行,即可成功获取网页源码
哎,又水了一篇文章…