selenium模拟点击爬取微博评论消息
项目介绍
日常在想下一期博文要写爬什么网页的内容好呢?
早上看到了娱乐圈又有一个大瓜,心想那就爬爬微博的评论来看看吧!
由于微博页面是动态编写的,用前面几篇文章的爬取方式显然已经不能达到爬取的要求了,因此今天将要用到selenium模拟点击来爬取动态页面的内容。
selenium介绍
selenium是一个强大的网页抓取工具,最初是为了网站自动化测试而开发的。近几年,它还被广泛用于获取精确的网站快照,因为网站可以直接运行在浏览器中。selenium可以让浏览器自动加载网站,获取需要的数据,甚至对页面截屏,或者判断网站上是否发生了某些操作等等。
selenium自己不带浏览器,需要第三方浏览器集成才能运行的。一般用的较多的是Chrome、Firefox,我这里用的是Firefox,也就是火狐浏览器,大家可以自行下载,我这里就不详细展开了。selenium第三方库下载的话,就直接
pip install selenium
网页详情
爬取内容:赵丽颖个人微博粉丝的评论
网页链接:https://weibo.com/1259110474/KcdgWAbuc?from=page_1006051259110474_profile&wvr=6&mod=weibotime&type=comment
网页内容:
从发布到现在还没有一天的时间,但是评论量已经达到了几十万条了,网页只能显示极少部分,很多都是被隐藏起来了,需要人为的去点击它,才能显示出来。
每次点击一次 查看更多 才能加载出一部分,几十万条,那至少需要点击几千下才能加载出全部,那要编写一个循环体,来不断点击 查看更多 来达到我们的目的。
来规矩,F12 查看网页源代码,
这里我们可以看到, 查看更多 对应的源码,每次模拟点击的代码如下
driver.find_element_by_xpath