一、视频数据结果

今天是2021.12.7号,前几天用python爬取了李子柒的油管评论并做了数据分析,可移步至:

https://www.cnblogs.com/mashukui/p/16220254.html

这次呢,用python爬虫爬了李子柒B站的所有视频数据。

先看下,最终爬取到的视频数据:

一共是142条视频数据(截至目前,李子柒在B站一共上传过142个视频)

每条数据包含的字段是:

视频标题,视频地址,视频上传时间,视频时长,是否合作视频,视频分区,弹幕数,播放量,点赞数,投币量,收藏量,评论数,转发量,实时爬取时间

基本上涵盖了视频的所有属性字段。

二、部分核心代码

这里,我分享下部分核心代码:

  1. url_list = [] # 视频地址
  2. title_list = [] # 视频标题
  3. author_list = [] # UP主昵称
  4. mid_list = [] # UP主UID
  5. create_time_list = [] # 上传时间
  6. play_count_list = [] # 播放数
  7. length_list = [] # 视频时长
  8. comment_count_list = [] # 评论数
  9. is_union_list = [] # 是否合作视频
  10. type_list = [] # 分区
  11. danmu_count_list = [] # 弹幕数
  12. for i in range(1, 10): # 前10页
  13. url = 'https://api.bilibili.com/x/space/arc/search?mid=19577966&ps=30&tid=0&pn={}&keyword=&order=pubdate&jsonp=jsonp'.format(
  14. str(i))
  15. r = requests.get(url, headers=headers)
  16. print(r.status_code) # 响应码200
  17. json_data = r.json()
  18. pprint(json_data)
  19. video_list = json_data['data']['list']['vlist']
  20. pprint(video_list)
  21. for i in video_list:
  22. bvid = i['bvid']
  23. url = 'https://www.bilibili.com/video/' + bvid
  24. url_list.append(url)
  25. title = i['title']
  26. title_list.append(title)
  27. author = i['author']
  28. author_list.append(author)
  29. mid = i['mid']
  30. mid_list.append(mid)
  31. create_time = i['created']
  32. create_time = trans_date(v_timestamp=create_time)
  33. create_time_list.append(create_time)
  34. play_count = i['play']
  35. play_count_list.append(play_count)
  36. length = i['length']
  37. length_list.append(length)
  38. comment = i['comment']
  39. comment_count_list.append(comment)
  40. is_union = '是' if i['is_union_video'] == 1 else '否'
  41. is_union_list.append(is_union)
  42. type_name = get_video_type(v_num=i['typeid'])
  43. type_list.append(type_name)
  44. danmu_count = i['video_review']
  45. danmu_count_list.append(danmu_count)

其中,把url中的mid换成B站任意up主的对应mid,都可以进行爬取!!

其中,把url中的mid换成B站任意up主的对应mid,都可以进行爬取!!

其中,把url中的mid换成B站任意up主的对应mid,都可以进行爬取!!

三、同步讲解视频

代码逐行讲解:

https://www.zhihu.com/zvideo/1451862342237229056

四、获取python源码文件

爱学习的小伙伴,想获取完整python代码文件,关注我的微信公众号"老男孩的平凡之路",后台回复关键字"李子柒B站爬虫",即可获取完整python源码及数据!


https://mp.weixin.qq.com/s?__biz=MzU5MjQ2MzI0Nw==&mid=2247484589&idx=1&sn=ceb10c99c39ce145ebb1cd2cabd6c099&chksm=fe1e104dc969995bf436d3626e4a88d8221304455b4ed0c8082baae97bc359714ccbeade0510&payreadticket=HBrNf9846j7VLid60OxD8cPqzB1Q6w7BIwOzmPhS-3sm4ekAs6Vwwj-WBlsFOLMCFVQS7A0#rd


我是马哥,全网累计粉丝上万,欢迎一起交流python技术。

各平台搜索“马哥python说”:知乎、哔哩哔哩、小红书、新浪微博。

【Python爬虫案例】用Python爬取李子柒B站视频数据的更多相关文章

  1. Python爬虫+可视化教学:爬取分析宠物猫咪交易数据

    前言 各位,七夕快到了,想好要送什么礼物了吗? 昨天有朋友私信我,问我能用Python分析下网上小猫咪的数据,是想要送一只给女朋友,当做礼物. Python从零基础入门到实战系统教程.源码.视频 网上 ...

  2. Python爬虫实战二之爬取百度贴吧帖子

    大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 前言 亲爱的们,教程比较旧了,百度贴吧页面可能改版,可能代码不 ...

  3. Python爬虫实战一之爬取糗事百科段子

    大家好,前面入门已经说了那么多基础知识了,下面我们做几个实战项目来挑战一下吧.那么这次为大家带来,Python爬取糗事百科的小段子的例子. 首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把 ...

  4. 转 Python爬虫实战二之爬取百度贴吧帖子

    静觅 » Python爬虫实战二之爬取百度贴吧帖子 大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标 ...

  5. 转 Python爬虫实战一之爬取糗事百科段子

    静觅 » Python爬虫实战一之爬取糗事百科段子 首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 友情提示 糗事百科在前一段时间进行了改版,导致 ...

  6. python爬虫学习01--电子书爬取

    python爬虫学习01--电子书爬取 1.获取网页信息 import requests #导入requests库 ''' 获取网页信息 ''' if __name__ == '__main__': ...

  7. python爬虫:了解JS加密爬取网易云音乐

    python爬虫:了解JS加密爬取网易云音乐 前言 大家好,我是"持之以恒_liu",之所以起这个名字,就是希望我自己无论做什么事,只要一开始选择了,那么就要坚持到底,不管结果如何 ...

  8. Python爬虫:为什么你爬取不到网页数据

    前言: 之前小编写了一篇关于爬虫为什么爬取不到数据文章(文章链接为:Python爬虫经常爬不到数据,或许你可以看一下小编的这篇文章), 但是当时小编也是胡乱编写的,其实里面有很多问题的,现在小编重新发 ...

  9. Python爬虫:通过关键字爬取百度图片

    使用工具:Python2.7 点我下载 scrapy框架 sublime text3 一.搭建python(Windows版本) 1.安装python2.7 ---然后在cmd当中输入python,界 ...

随机推荐

  1. 为什么 wait(), notify()和 notifyAll ()必须在同步方法或 者同步块中被调用?

    当一个线程需要调用对象的 wait()方法的时候,这个线程必须拥有该对象的锁,接 着它就会释放这个对象锁并进入等待状态直到其他线程调用这个对象上的 notify() 方法.同样的,当一个线程需要调用对 ...

  2. gradle构建scala

    1. 在目录下创建build.gradle文件,内容为: apply plugin: 'idea' apply plugin: 'scala' repositories { mavenLocal() ...

  3. HTML 5中的输出元素是什么?

    当你需要计算两个输入的结果并将结果放到一个标签里的时候,就需要输出元素了.比如你有两个文本框(参见下图),你想要让这些文本框数字相加,然后输出给标签. 下面就是如何使用HTML 5代码输出元素. &l ...

  4. 以太网EMC(浪涌)中心抽头方案(节约空间)

  5. 使用el-tree-transfer的方式

    1.首先在组件中引入el-tree-transfer 2.然后在template中使用注册后的组件 参数:title 说明:标题 类型:Array 必填:false 默认:["源列表&quo ...

  6. python爬虫---表情包批量采集

    代码: import requests from pyquery import PyQuery as pq # 比xpath还要灵活的html解析工具 # 定义请求 headers = { " ...

  7. C#编写一个简易的文件管理器

    编写一个简易的文件管理器,通过本次实验,练习 TreeView.ListView 和SplitContainer 控件的使用,同时熟悉 C#文件系统的操作方法以及 File 类和 Directory类 ...

  8. java中如果我老是少捕获什么异常,如何处理?

    马克-to-win:程序又一次在出现问题的情况下,优雅结束了.上例中蓝色部分是多重捕获catch.马克-to-win:观察上面三个例子,结论就是即使你已经捕获了很多异常,但是假如你还是少捕获了什么异常 ...

  9. 大数据学习之路之ambari配置(二)

    按照网上的教程配置,发现配置到hadoop虚拟机内存就开始不够了,心累

  10. js判断输入数字是否是整数,金额、数字

    function isIntNum(strNum){//js判断输入数字是否是整数 仅供学习思想 var strCheckNum = strNum+""; if(strCheckN ...