粉丝独白

说起热门的B站相信很多喜欢玩动漫的,看最有创意的Up主的同学一定非常熟悉。我突发奇想学Python这么久了,为啥不用Python爬取B站中我关注的人,已经关注的人他们关注的人,看看全站里面热门的UP主都是是哪些。

要点:

- 爬取10万用户数据

- 数据存储

- 数据词云分析

1.准备阶段

写代码前先构思思路:既然我要爬取用户关注的用户,那我需要存储用户之间的关系,确定谁是主用户,谁是follower。

存储关系使用数据库最方便,也有利于后期的数据分析,我选择sqlite数据库,因为Python自带sqlite,sqlite在Python中使用起来也非常方便。

数据库中需要2个表,一个表存储用户的相互关注信息,另一个表存储用户的基本信息,在B站的用户体系中,一个用户的mid号是唯一的。

然后我还需要一个列表来存储所以已经爬取的用户,防止重复爬取,毕竟用户之间相互关注的现象也是存在的,列表中存用户的mid号就可以了。

2.新建数据库

先写建数据库的代码,数据库中放一个用户表,一个关系表:

3.爬取前5页的用户数据

我需要找到B站用户的关注列表的json接口,很快就找到了,地址是:

https://api.bilibili.com/x/relation/followings?vmid=2&pn=1&ps=20&order=desc&jsonp=jsonp&callback=__jp7

其中vimd=后的参数就是用户的mid号

pn=1指用户的关注的第一面用户,一面显示20个用户

因为B站的隐私设置,一个人只能爬取其他人的前5页关注,共100人。

整个爬取页面的思路比较简单,首先设置header,用requests库进行API请求,获得关注的用户数据列表。

我们爬取前5页,每一页的数据进行简单的处理,然后转为字典数据进行获取mid,uname,sign3个维度的数据,最后save()函数存入db.

4.关于怎么快速学python,有什么方法,这个问题,想必大家都已经心中有数了,打算深入了解这个行业的朋友,欢迎加入到千人交流答疑群:125240963

python爬取b站数据_如果利用Python爬取B站上千万数据?B站直播都是大屌萌妹吗?...相关推荐

  1. python 怎么爬桌软件数据_如何利用Python爬取并分析红岭创投的数据?

    第一步:爬取数据 通过 selenium + Firefox 的无头模式将需要的数据爬取出来,代码实现不在赘述,详细步骤可查看我的上一篇图文(如何利用Python爬取网易新闻), 由于 seleniu ...

  2. python可以爬取wind数据库吗_如何利用Python来爬取近百万条数据?数据库会炸吧?...

    2.页面分析 发现一共有88万多个问题,再看一下页面的列表规律,我们按照每页最大显示50个问题,一共有17776页,数据非常大 1).页面列表的构建 整个的stackoverflow上关于Python ...

  3. python获取币安k线数据_如何利用Python 爬取币乎的数据

    1LSGO软件技术团队 贡献人:李金原 如果喜欢这里的内容,你能够给我最大的帮助就是转发,告诉你的朋友,鼓励他们一起来学习. If you like the content here, the gre ...

  4. python抓取朋友圈动态_如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)...

    原标题:如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下) 前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往 ...

  5. python爬虫能爬取微信密码吗_如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例...

    今天我们继续focus on微信,不过这次给大家带来的是利用Python网络爬虫抓取微信好友总数量和微信好友男女性别的分布情况.代码实现蛮简单的,具体的教程如下. 相信大家都知道,直接通过网页抓取微信 ...

  6. python异常值处理箱型图_如何利用python处理异常值?

    在数据清洗阶段,我们需要找到异常值,并对其进行相应的一些处理.在python中,异常值的处理常常需要结合一些数据模型或概率分布来解决.下面做一个简单的介绍. 1.打开pycharm开发工具,在运行窗口 ...

  7. python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...

    如何利用python制作一个解压缩软件 python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip ...

  8. python如何实现微信自动聊天_如何利用python实现微信智能聊天功能,具体该怎么做?...

    这个实现不难,需要先安装一下itchat库,之后注册一下图灵机器人,最后就可以编程实现微信智能聊天功能了,下面我简单介绍一下实现过程,实验环境win10+python3.6+pycharm5.0,主要 ...

  9. python星座进行分析并输出_怎么利用python输出星座

    怎么利用python输出星座?下面给大家带来具体方法: 思路: 1.定义一个get_constellation(month,date)函数,来获取出生日期. 2.创建一个dates和constella ...

最新文章

  1. How to check Laravel version?
  2. 广告影响网站打开速度解决方案
  3. SAP云平台上的502 Bad Gateway错误
  4. java 字符串contain_如何使用java.lang.String.contains()方法
  5. vyos安装anaconda3
  6. 凯恩帝对刀和刀补_KND数控车床试切对刀和调刀补
  7. 卡皇稳了,RTX3090获鲁大师Q1季度最强显卡!
  8. 进不了BIOS,电脑开机黑屏
  9. 阿里云服务器安装并配置nginx代理转发请求
  10. mysql结果作为另一次查询_MySql中一次查询结果用作二次查询条件
  11. Hbase(nosql)体系结构有基本操作 笔记八
  12. 【游戏编程扯淡精粹】如何学习编程语言
  13. 使用Packer 在 VMware vSphere 上构建 Redhat/CentOS 虚拟机
  14. PHP接口的概念与接口的应用场景
  15. 微信小程序 授权地理位置被拒绝后 wx.getLocation接口调用失败问题
  16. 极限运算法则——“高等数学”
  17. auto.exe病毒的快速解决办法
  18. 腾讯服务器显示未绑定扣费中,腾讯云费用账号欠费是否影响云服务资源使用
  19. 融资融券是什么?如何开通?具体怎么融资操作?现在手续费和融资费率一般多少?
  20. GoldenSection

热门文章

  1. 深圳区块链电子发票系统日均开票超12万张
  2. PHP laravel系列之bootstrap美化
  3. android 汽车转向辅助线,Android开发 - 掌握ConstraintLayout(七)辅助线(Guideline)
  4. TensorFlow实战:Chapter-4(CNN-2-经典卷积神经网络(AlexNet、VGGNet))
  5. 转:知识就是力量,但良知才是方向
  6. 【UE4笔记】蓝图升降电梯
  7. 物联网与大数据技术-2
  8. api平台支持的格式
  9. 06 - 2 分层架构模式(Layered Arch)
  10. Matlab中频谱、功率谱、功率谱密度的关系以及如何求信号的功率