目标:爬取《我就是演员》总决赛视频弹幕。

方法:找到弹幕所在的url,看该数据Response的是什么类型,再决定采取什么解析方法,最后保存到csv文件中。

尝试:我分别点击不同时刻,发现规律,每隔30秒就会出现新的弹幕url,因此只需改变参数即可实现重复抓取。

要点:设置随机睡眠时间避免ip被封。

from urllib.parse import urlencode
import requests
import re
import csv
import time
import randomdef search(base_url, time_stamp):try:headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36','accept': 'text / html, application / xhtml + xml, application / xml;q = 0.9, image / webp, image / apng, * / *;q = 0.8','accept - encoding': 'gzip, deflate, br','accept - language': 'zh - CN, zh;q = 0.9, en; q = 0.8','cache - control': 'max - age = 0','cookie':'你的cookie'}data = {'otype': 'json','callback': 'jQuery19100088505973541948_1544320979640','timestamp': time_stamp,'target_id': '3542121399','count': '80','second_count': '5'}# 使用urlencode()函数将参数表示为链接形式,进行拼接url = base_url + urlencode(data)response = requests.get(url, headers=headers)if response.status_code == 200:return response.textexcept Exception:return Nonedef get_30s_danmu(text):id = re.findall(r'"commentid":"(.*?)",', text)comments = re.findall(r'"content":"(.*?)",', text)agree = re.findall(r'"upcount":(.*?),"', text)for (i, j, k) in zip(id, agree, comments):  # 生成可迭代对象with open('actor_danmu.csv', 'a', newline='', encoding='utf-8-sig') as f:  # newline=''可以避免存入空行;设置编码;追加写入writer = csv.writer(f)writer.writerow(['\''+str(i), str(j), k])def main():time_stamp = 0num = 1while True:print('第{}次爬取'.format(num))print('*'*50)base_url = 'https://mfm.video.qq.com/danmu?'text = search(base_url, time_stamp)print(text)print('*'*50)get_30s_danmu(text)time_stamp += 30num += 1# 设置随机睡眠时间,避免ip被封。sleep_time = random.randint(1, 10)print('睡眠时间:', sleep_time)print('*'*50)time.sleep(sleep_time)if num > 241:print('抓取弹幕完成')breakif __name__ == '__main__':main()

爬取《我就是演员》视频弹幕相关推荐

  1. 【Python】大数据挖掘课程作业1——使用爬虫爬取B站评论、弹幕与UP主的投稿视频列表

    [Python]大数据挖掘课程作业1--使用爬虫爬取B站评论.弹幕与UP主的投稿视频列表 数据挖掘部分的基本目标是:对于指定的UP主,能够获取其投稿视频列表:对于指定的视频,能够获取其视频标签.评论( ...

  2. Python爬取哔哩哔哩弹幕并且造词云图简单版!!!

    一,操作步骤 1.通过浏览器打开哔哩哔哩 2.选择一个播放量较合适的视频(不要太大也不要太小 大概就50万的样子)比如我用的是:https://www.bilibili.com/video/BV1th ...

  3. 周杰伦新歌发布,爬取《Mojito》MV弹幕,看看粉丝们都说的些啥!

    6月12日凌晨0点,Jay Chou最新单曲<Mojito>正式上线,仅上线1小时销售量就超过百万张,预计今天这首单曲的销量仍然会继续攀升.这次新歌的歌名叫做<Mojito>, ...

  4. Python爬虫新手入门教学(二十):爬取A站m3u8视频格式视频

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 前文内容 Python爬虫新手入门教学(一):爬取豆瓣电影排行信息 Python爬虫新手入门 ...

  5. python自动搜索爬取下载文件-python批量爬取下载抖音视频

    本文实例为大家分享了python批量爬取下载抖音视频的具体代码,供大家参考,具体内容如下 import os import requests import re import sys import a ...

  6. python爬取抖音用户数据_python批量爬取下载抖音视频

    本文实例为大家分享了python批量爬取下载抖音视频的具体代码,供大家参考,具体内容如下 import os import requests import re import sys import a ...

  7. json spr路驾驶技术视频api_每天弄个小爬取之Python爬取批量爬取B站小视频

    1. 批量爬取B站小视频 哔哩哔哩网站(英文名称: bilibili),是年轻人的文化社区,被粉丝们亲切的称为B站.该网站中拥有动画.番剧.国创.音乐.舞蹈.游戏.科技.生活.鬼畜.娱乐.时尚等多个内 ...

  8. python爬取b站403_Python如何爬取b站热门视频并导入Excel

    代码如下 #encoding:utf-8 import requests from lxml import etree import xlwt import os # 爬取b站热门视频信息 def s ...

  9. Python每日一练(9)-批量爬取B站小视频

    目录 1. 批量爬取B站小视频 2. 获取动态请求的JSON数据 3. 随机生成浏览器的头部信息 4. 获取要下载视频的大小 5. 实时打印文件下载进度 1. 批量爬取B站小视频 哔哩哔哩网站(英文名 ...

  10. Python爬取抖音app视频

    作者:哈库呐玛塔塔 来源:https://urlify.cn/ANzAre 记录一下如何用python爬取app数据,本文以爬取抖音视频app为例. 编程工具:pycharm app抓包工具:mitm ...

最新文章

  1. 用原生JavaScript实现图片瀑布流的浏览效果
  2. RuoYi后台系统权限管理解析
  3. VMWare ubuntu虚拟机每次开机要等待1分30秒解决方案(A start job is running for dev-disk-by\x2duui...)(修改真实swap UUID)
  4. Http / Get 和 Post 区别
  5. ICML 2021 | Option-GAI: 机器人任务太长太复杂?不妨试试层次化模仿学习
  6. scala通过JDBC进行数据库操作
  7. java线程安全定义了什么单例_Java中四种线程安全的单例模式实现方式
  8. java基础—TreeSet集合中储存自定义对象(java集合二)
  9. 键盘上ALT键的妙用
  10. Android8.0 HIDL绑定式和直通式区别
  11. java离职证明模板word_离职证明模板Word免费版下载
  12. shell 脚本教程 入门级
  13. 机器学习基础:概率论基础
  14. YY 数据库平台化建设实践
  15. Linux centos安装chromium
  16. Mac python 安装信息安全,Pycrypto 出现,C compiler cannot create executablesC编辑器不能创建可执行文件
  17. 一款值得使用的会议室管理软件【会议预订小程序】
  18. 漏刻有时数据可视化Echarts组件开发(21):基于echarts开发的自动旋转map3D下钻和柱图地图
  19. 河南二级分销系统开发|二级分销是如何分佣的?
  20. PS使得画布大小迅速和图像大小保持一致,裁切功能

热门文章

  1. thinkphp Invalid numeric literal报错
  2. iOS开发工作干什么
  3. 阿里云ACP考试报名、复习、备考经验与心得分享
  4. [转]unity之龙骨动画的使用
  5. EURUSD,H1: invalid lots amount for OrderSend function
  6. MYsql备份数据库如何导入到新数据库!
  7. 无痛不快,无苦何甜,活着,本就是一种修行。
  8. tkinter matplotlib 画图
  9. RT-Thread各版本简介及架构介绍
  10. Redis过期数据的删除策略