微博热搜榜动态演示
背景:
我们知道基于网络爬虫,网页抓取需要考虑很多网页加载的方式来选择合适的爬取方法,但是微博热搜榜我们发现在网页源代码中就可以轻松获得 热度其和热搜内容。今天就尝试着利用网络爬虫和可视化进行动态演示。
注:(微博热搜榜是写博客当天打开的截图,程序是前一天跑的并截图前一天的热搜榜的,所以动态展示结果和热搜截图有差异)
一、准备工作
1.打开微博热搜榜单网址查看热搜榜单内容和热度。
https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6
2.选择开发者工具选择查看源代码,选择Network刷新页面获得相应内容,这里选择第一个请求查看Response的内容发现热搜榜单内容就在该网页源代码中。那我们下一步就可以编写代码Request请求了。
二、编写代码
1.编写爬取该网站热搜数据的Spider.py,我们这里编写的是一次性爬取榜单前十五个热搜榜的信息和热度并写入data.csv。然后利用时间戳每隔一分钟就会爬取一次,所以执行程序后等了九分钟才关闭程序,在data.csv文档中就爬取了9组排名前十五的数据。
2.编写进行动态演示的Pyecharts.py代码部分,利用先展示第一组的可视化利用For循环进行下一组数据的选取的可视化展示,程序下方设置展示速度和是否自动播放来达到动态的效果。
三、结果展示
(由于这里是截图并没有动态效果,可以自己进行尝试查看效果)
通过这个案例我们的总体思路就是通过Requests来请求我们需要爬取的网页地址,然后通过解析工具来将目的数据写到我们本地文档TXT中,然后通过Pyecharts来对我们TXT文档中的不同时间段的榜单数据进行循环轮流展示,从而达到动态得效果。