「TRIGGER」
直接起因是因为做一个小玩意儿:新冠疫情实时监控 (基于arduino, lcd显示屏, 树莓派;串口通信;python, bash、C)
数据来源是从网上「wget」的一个html文件,网址是知乎热榜(一开始是知乎专栏里的,后数据量增多知乎重新设计了页面)。
「DESCIRBE / EXPERIENCE」
几个程序/命令的配合,简单实现了:树莓派下载目标网址对应的源文件;bash脚本分离出想要的数据字段、c程序将数据存储以便简单可视化(gnuplot);python程序与arduino进行串口通信;arduino驱动lcd显示屏显示数据。
一开始对知乎源网页没有什么感觉,就觉得有点难找出数据,全都挤在一行,编辑器的自动换行后太难看了,不过还好,反正有脚本自己找,我只要找一次而已。
后面有坛友(云天@dfrobot)有推荐网易新闻的源网页,看了之后连连感叹排版真好看,换行制表符整整齐齐。和网易的后端人员相比,知乎的后端也太不上心了。但后面一想也不一定,也许是因为两者用的系统不一样,像windows, linux(unix), mac系统对换行符解释不一样,我猜这应该是原因... 好吧,先不管好不好看的问题。
关键是有没有提供直接数据或者api接口给无利益相关的普通网络用户访问获取。
有关api接口,这还得多亏坛友(铁熊@dfrobot)的帖子,上面提到了利用浏览器自带的开发者工具找出对应api接口,从而方便快捷地得到想要的数据。在此之前,对于知乎和网易源html页面的评价只停留在外观上,如下图。
【图片描述:知乎源网页之前的源网页,所有都是一行,猜测知乎后端人员用的编程环境和下图中网易后端人员的编程环境不同(如果不对的话请指出,谢谢!)】
【图片描述:网易之前的源网页】
上面两幅图对比一下,当时的第一印象就是网易很良心啊,以前的数据也给出了,太方便了~ 然而今天(2月23号),其网页的变动让我有点无奈。
【图片描述:数据呢?嗯?COVER?????当群众不懂英文???数据掩盖起来不给群众看了?不给群众用了?命名这么直接?这是什么年代?当年资本家明面上剥夺工人的剩余价值,现在到了信息化时代,网络公司明面上剥夺群众获得信息数据的权利??数据都没共享谈什么ai时代喔~】
嗯,情绪有点波动,需要dominator(ドミネーター)的paralyze(パラライザー)模式来一枪(日漫心理测量者)。
其实不怪网易,而且这应该也不算开源数据,毕竟所有权在网络公司手,是他们收集的数据。
但从铁熊前辈的项目中,我看到了那家小破站---b站。给我印象是B站是真的属于国人的网站--主要言论自由什么的,像有些网站我简单评论就要被禁言七天。
【图片描述:我这么平淡无奇语气不强烈都会被删被禁言????】
好了,扯远了。其实主要想说b站提供丰富完善的api接口,能让我们便捷地获得信息,诸如粉丝数、播放量等信息。
【图片描述:b站的api】
于此相对的是网易和知乎...
【图片描述:网易的api,还有它的COVER... 等到以后数据共享成为共识后不知道会不会被当作教案】
【图片描述:知乎的api,同样没有找到api,但在其html文件里能找到对应的数据】
【图片描述:知乎更新了疫情实时显示后的html源文件,稍微难找了一丢丢,但起码还是有数据提供】
好吧,可能有点过于吹毛求疵,毕竟b站提供的是自己用户的粉丝数、播放量什么的,而上述网易知乎未提供的只是新冠疫情数据的api接口罢了,无可厚非。
嗯,有理。但当我想试着在我乎上找一找有关自己的关注、浏览类似api时,我失败了。(当然知乎的特点是html中有数据哈哈哈)
「CONCLUTION」
Anyway, 不管怎么样,从上述可以推测出一个结论:
在疫情初步时期,各大网站(丁香园的没有留图保存)也许为了抓紧实现实时数据展示的功能,在html中就直接插入了对应的数据。这就给一些在家无聊想找点乐子的群众以可乘之机---简单抓取html并加以利用。但随着疫情的持续,各大网络公司主管发现有很多很多爬虫在爬他们的数据,所以就将数据COVER掉了。人民群众由此失去了一项乐趣~
真的是某些讽刺漫画的真实写照。
虽然可能要理解一下服务器维护的压力... bash脚本while中是sleep 1s的没维护过服务器的我可能有点站着说话不腰疼...
以上,可能有些话有点过于夸夸其谈,请各位前辈指正!
谢谢!
附:参考资料和自己做的实物
云天@dfrobot: https://mc.dfrobot.com.cn/thread-302879-1-1.html
铁熊@dfrobot: https://mc.dfrobot.com.cn/thread-303095-1-1.html
还有B站、知乎、网易。
详细说明:Shuuei@dfrobot https://mc.dfrobot.com.cn/thread-302816-1-1.html
程序源码:罗马烟花筒@make.quwj https://make.quwj.com/project/199
程序演示:罗马烟花筒@bilibili https://www.bilibili.com/video/av86666915