最近做网站时光机,需要加载网页完整内容,但是因为某些网站需要加载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即可

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

哎,又水了一篇文章…
发表回复