随着愈来愈多的web数据都是通过js处理的,对于爬虫来讲就有这很大的难度,通常情咱们使用selenium+phantomjs来去解析执行js,可是自2017 4月份后selenium再也不维护phantojs接口,因此我么须要找一个替换的方式,好在chrome以及Firefox也提供了无界面操做方式。python
Headless Browser是没有图形用户界面(GUI)的web浏览器,一般是经过编程或命令行界面来控制的。web
Headless Browser可用于自动化可用性测试或测试浏览器交互。另外,若是内容是动态呈现的(好比经过Javascript),web抓取等传统的面向web的任务就很难作了。使用Headless Browser能够方便地访问这些内容,由于内容的呈现方式与彻底浏览器中的内容彻底相同。chrome
使用方法1:编程
from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument('--headless') options.add_argument('--disable-gpu') my_driver = webdriver.Chrome(executable_path='./chromedriver',chrome_options = options) driver.get("https://www.baidu.com")
使用方法2:浏览器
from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-gpu') driver = webdriver.Chrome(executable_path='./chromedriver', chrome_options=chrome_options) driver.get("https://www.baidu.com")
【注】在使用selenium前请自行下载chromedriver驱动。less