解决无法获取到B站点赞数和播放量的解决办法
起因:
因为前几天突然想到自己也想试试看用ESP8266搭配OLED来将B站的粉丝和点赞数显示出来看看,就趁星期天放假在家,找了一个以前买的ESP8266开发板搭配一个OLED,再从网上找了一个代码改了一下后烧录进去,然后就发现点赞数和播放量显示不出来。。。。
排查过程:
看了一下代码,也没有什么问题,用的API也是对的,为什么不行呢?
于是查了一下网上,网上说是因为cookie的问题,其实是的,就是因为没有加入自己的cookie导致不能获取到点赞数和播放量,但是网上说的不是很清楚。
于是,我就打算出一篇比较详细的来讲解一下如何解决这个问题~
解决方法:
首先,遇到这个问题有两个原因,第一个是你没有加上cookieq请求信息,第二个你的cookie不对,没有复制自己的cookie
对于第一个原因,解决方法为首先加上这三行:
http.addHeader("Host","api.bilibili.com");
http.addHeader("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:62.0) Gecko/20100101 Firefox/62.0");
http.addHeader("Cookie","这里加入自己的cookie"); //后面将讲解如何获取到自己的cookie
然后将cookie替换为自己的cookie,这个同时也可以解决因为不是自己cookie导致不能获取数据的问题!!!
如何获取到自己的cookie呢?
一、打开b站的网页再登陆上去,然后点击“个人中心”,进入个人中心后,按下“F12”键,进入开发者模式
二、进入开发者模式后,如图所示,按照步骤走就好
注意:这里第三步,网上有些说是点击nav,但是我在nav里面没有找到cookie,而是在home下面找到的,因此可能大家两个都可以试试看~
最后找到了,将自己的cookie复制出来,替换到这里即可~
http.addHeader("Cookie","这里加入自己的cookie");
这样就可以看到自己的点赞数和播放量了,如图所示:
本人水平有限,上述信息仅供学习参考,如有错误和不妥之处,请多多指教。
另外创作不易,请勿抄袭,如果有帮助到大家的话希望大家可以点个赞,谢谢~