Python爬虫之Chrome无头浏览器

Headless Browser(无头的浏览器)

随着愈来愈多的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