爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 19890|回复: 1

[经验总结] 网络爬虫模拟浏览器之无头谷歌Headless Chrome

[复制链接]

新浪微博达人勋

发表于 2021-4-29 15:14:48 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
现在很多爬虫教程使用的浏览器是phantomJS,这是比较老旧的,
目前,谷歌无头浏览器Headless Chrome取代了phantomJS,
因为现在大家用的基本都是谷歌内核的浏览器,连微软的Edge都是谷歌内核,
所以,使用无头谷歌分析网页,更便利、更准确,
phantomJS中的网页结构与我们使用谷歌内核的浏览器看到的,有时不一样,所以可能会出现元素定位错误。


何谓“无头”呢?就是爬虫使用浏览器的时候不会启动界面。

以下是使用无头谷歌的步骤:
1、下载安装谷歌浏览器
2、把Chrome.exe所在目录放到环境变量Path
3、查看浏览器版本,我的是:90.0.4430.93(正式版本) (64 位)
4、打开:http://npm.taobao.org/mirrors/chromedriver/
5、从中找到对应的版本的文件夹(是以斜杠结尾的那个,不是以Latest开头的那个)
6、点开这个文件夹,发现有个chromedriver_win32.zip,下载之
7、解压之,发现是个chromedriver.exe
8、把它一式两份分别复制到Chrome.exe所在目录和Python.exe所在目录


这样,我们就可以让selenium使用Headless Chrome了

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2021-4-29 15:23:04 | 显示全部楼层
然后可以静默运行

# 配置谷歌浏览器静默启动【后台启动】
chrome_options = webdriver.ChromeOptions()
# 初始化谷歌浏览器的配置【必须加上】
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--disable-dev-shm-usage')
########################################################
chrome_driver = 'xxxx'   
driver = webdriver.Chrome(executable_path = chrome_driver, options=chrome_options)          #加载浏览器驱动
driver.get('网址')  #打开页面
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表