0.学习路径示意图
各位小伙伴大家好,这次博主分享的是利用虚拟浏览器ChromeDriver去爬取微博大V--财宝宝的微博长文。
1.ChromeDriver简介
WebDriver是一个开源工具,用于在许多浏览器上自动测试webapps。它提供了导航到网页,用户输入,JavaScript执行等功能。ChromeDriver是一个独立的服务,它为 Chromium 实现 WebDriver 的 JsonWireProtocol 协议。简单来说,就是可以模仿人类鼠标点击、滑动与键盘输入的一个虚拟浏览器,用来解决我们日常爬虫中遇到的动态网页问题。
何为动态网页?
所谓的动态网页,是指跟静态网页相对的一种网页编程技术。静态网页,随着html代码的生成,页面的内容和显示效果就基本上不会发生变化了——除非你修改页面代码。而动态网页则不然,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的。
当今流行的商业爬虫框架scrapy适合去解决静态网页的爬取问题(下期会讲),然而越来越多的网站采用了动态设计,微博也是如此,因此这次博主打算写一篇教程手把手教大家用虚拟浏览器chrome driver取爬取微博大V--财宝宝的微博长文。
这位大V放弃了自己微博著作权,且他的微博基本以文字为主,博文格式容易处理,所以博主为了在不承担法律责任的同时,也为了方便教学,不写一些杂七杂八的处理函数,选择了以他的微博进行教学。
(博主良苦用心有没有)
言归正传,下面我们进入chrome driver的学习。
2.实验准备
a.运行环境:Windows Anaconda 3.7.2
b.下载chrome浏览器
c.下载chrome driver:
下载链接
https://www.cnblogs.com/pachongshangdexuebi/p/7086564.html
d.chrome driver存放位置
放在\Anaconda\Scripts文件夹下(如下图)
因此记得安装anaconda3!
3.实验步骤
a.实验前须知:一般来说网页的爬取难度: PC端>手机端m>wap,由于微博没有wap版了,博主就选择了手机版去爬取。
b.代码小视频
视频卡顿?bilibili值得拥有~(っ•̀ω•́)っ✎⁾⁾ 我爱学习
c.代码git链接
代码git链接
https://github.com/ChileWang0228/python_tutorial/tree/master/weibo_spiders
4.总结
随着越来越多的网站采取动态设计,学会利用虚拟浏览器去爬虫已经成为了每一个爬虫工程师的必备技能,上面的代码只是短短几十行就完成了,导致chrome driver一些比较有趣的功能都还没来及介绍如模拟鼠标点击,下拉菜单栏等等,下面我附上几个链接来介绍他的具体功能,小伙伴们学完之后可以尝试下如何利用虚拟浏览器去实现模拟登录weibo。
学习就是这样,搭建了主体框架,接下来的添砖加瓦就容易得多了。
下期我会讲用商业爬虫框架去处理静态网页,动静结合,小伙伴们基本就能将网络爬虫这个模块学会了。
希望这次的教程能让大家有所收获,谢谢大家~
selenium的简单用法
https://www.jb51.net/article/145421.htm
Selenium-定位元素
https://blog.csdn.net/y472360651/article/details/79659968
WebDriver使用入门
https://blog.csdn.net/hekaiyou/article/details/79067803
如何在Linux上使用虚拟浏览器
网友评论