b站个人直播消费记录爬取
我们都知道b站有很多up主,当然也有很多主播。相信各位经常看直播的小伙伴也会给主播刷礼物。
有这样一个场景,说富二代张三给主播刷了很多礼物,某天打开自己的直播消费记录想统计一下分别给各个主播刷了多少钱。但是一查好家伙发现有成千上万条记录,这一条一条统计不得累死个人?这该怎么办呢?聪明的张三想到可以用爬虫的方法,但是呢发现b站网页版没有消费记录,只有手机端才有,这下张三犯难了。因为张三之前只学习过网页端的爬虫方法,类似用python的requests库获取网页源代码,再加上正则表达式爬取或者通过Selenium库控制浏览器进行爬取。但是手机上的该怎么爬取呢?聪明的张三向罗老师请教,罗老师稍加思索,给出了以下方法。
手机usb连接电脑,通过python和Appium,使得电脑控制手机进行爬取。
张三追问那么该怎么具体实现呢?罗老师给出了以下具体操作步骤
声明:该方法适用于安卓手机。苹果手机该方法暂不支持,可以在安卓手机上登录苹果手机的账号进行替代。
1.环境配置
前期工作准备,需要安装python、PyCharm、jdk、Appium-windows-x.x、Appium_Python_Client、Android SDK
其实前两项python和pycharm推荐用anaconda的jupyter来替代,(anaconda上面集成了python的许多库,如果不是用python开发的话推荐使用)。所以我们只需要anaconda、jdk、Appium-windows-x.x、Appium_Python_Client、Android SDK这五项即可。
环境配置具体过程有有需要的请看以下链接https://blog.csdn.net/weixin_42617600/article/details/114111785
这篇博客讲得十分详细且有趣,讲的是如何用电脑打开手机上的b站App。环境配置好后就可以进入下一步。在jupyter运行pytnon代码就行,代码如下。
2.导入模块

3.电脑控制手机打开b站App

4.打开b站

打开之后类似下图

5.在手机上点击我的——我的直播——消费记录,查看个人消费记录

因为这个消费记录很多,一个页面只能显示10条,要想爬取所有的可以设置滑动,边向上滑动边爬取就能获取所有的数据。
具体参数设置的flick_distance=1050可以不重不漏的爬取,如下所示:

7.爬取

运行结果如下所示

因为这些数据被我们存储在列表里,转换成dataframe,

爬取结果如下所示,爬取结果可以保存成excel表格或者存储到数据库中。

ok那么任务完成,张三你学废了吗?
这里的代码都是截图,该文章就是展示一下b站的直播消费记录怎么爬取,给大家一个思路
真正需要代码的话可以到下面我写的这个博文中复制。当然这种方法使用与爬取个人的直播消费记录,想爬取别人的必须登上他的b站账号。
https://blog.csdn.net/mister1/article/details/115705084
总结,手机上的数据怎么爬取?其实Appium已经给出了我们答案,类似的,手机上的微信朋友圈,抖音上的一些数据都可以通过这种方式方法进行爬取,如果你真正感兴趣或有需求的话,那么Appium这种方法推荐给你。