抓个电影弹幕

简介: 抓个电影弹幕

今天,我们来做个抓取电影弹幕的爬虫,以芒果TV网站上的免费电影《少年的你》为例,抓取一下芒果TV上电影的弹幕。

电影网页网址为:


https://www.mgtv.com/b/328217/7053545.html?lastp=list_index

分析一下这个网站,发现电影弹幕封存在json文件中,如下图:

封存弹幕的网址为:


https://bullet-ws.hitv.com/bullet/2022/06/19/012311/7053545/{i}.json

既然网址找到了,爬取就简单了,把电影拉到最后,发现最后一个弹幕为130,爬虫代码为:


import requestsimport pandas as pd
headers = {    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'}df = pd.DataFrame()for i in range(0, 131):    resposen = requests.get(f'https://bullet-ws.hitv.com/bullet/2022/06/19/012311/7053545/{i}.json', headers=headers)    # 直接用json提取数据    for j in resposen.json()['data']['items']:        ids = j['ids']  # 用户id        content = j['content']  # 弹幕内容        time = j['time']  # 弹幕时间        # 有的不存在点赞数        try:              v2_up_count = j['v2_up_count']        except:            v2_up_count = ''        text = pd.DataFrame({'ids': [ids], '弹幕': [content], '发生时间': [time],'点赞数':[v2_up_count]})        df = pd.concat([df, text])df.to_csv('少年的你.csv', encoding='utf-8', index=False)

爬取结果为:

芒果TV的弹幕爬取还是比较简单、单一的,大家有时间试试手吧?,明天给大家放一下这个弹幕的词云

相关文章
|
监控 安全 测试技术
理解非功能需求---SRS软件需求规格指南系列
本文全面解析非功能需求(NFR),涵盖性能、安全性、可靠性、可用性、可扩展性等关键质量属性。内容包括定义、现实案例及最佳实践,帮助团队在软件开发生命周期中有效识别、记录与管理NFR,确保系统满足利益相关者期望与行业标准。
1006 3
|
XML SQL Java
MyBatis 的延迟加载是如何实现的
MyBatis的延迟加载(懒加载)特性提高了性能,只在需要时加载关联数据。配置延迟加载需在`mybatis-config.xml`中设置`lazyLoadingEnabled`为`true`,`aggressiveLazyLoading`为`false`。实现原理基于代理对象,MyBatis为延迟加载属性创建代理,在访问时触发实际查询。代理通过Java动态代理实现,拦截方法调用,按需加载数据。
687 0
|
机器学习/深度学习 传感器 人工智能
敢不敢和AI比猜拳?能赢算我输----基于手势识别的AI猜拳游戏【含python源码+PyqtUI界面+原理详解】-python手势识别 深度学习实战项目
敢不敢和AI比猜拳?能赢算我输----基于手势识别的AI猜拳游戏【含python源码+PyqtUI界面+原理详解】-python手势识别 深度学习实战项目
|
Windows
Windows 映射网络驱动器及删除-此网格连接不存在
Windows 映射网络驱动器及删除-此网格连接不存在
1821 0
|
机器学习/深度学习 PyTorch API
优化注意力层提升 Transformer 模型效率:通过改进注意力机制降低机器学习成本
Transformer架构自2017年被Vaswani等人提出以来,凭借其核心的注意力机制,已成为AI领域的重大突破。该机制允许模型根据任务需求灵活聚焦于输入的不同部分,极大地增强了对复杂语言和结构的理解能力。起初主要应用于自然语言处理,Transformer迅速扩展至语音识别、计算机视觉等多领域,展现出强大的跨学科应用潜力。然而,随着模型规模的增长,注意力层的高计算复杂度成为发展瓶颈。为此,本文探讨了在PyTorch生态系统中优化注意力层的各种技术,
1195 6
优化注意力层提升 Transformer 模型效率:通过改进注意力机制降低机器学习成本
|
监控 负载均衡 网络协议
|
数据可视化 项目管理
个人和团队都好用的年度复盘工具:看板与KPT方法解析
本文带你了解高效方法KPT复盘法(Keep、Problem、Try),结合看板工具,帮助你理清头绪,快速完成年度复盘。
1661 7
个人和团队都好用的年度复盘工具:看板与KPT方法解析
|
机器学习/深度学习 编解码 人工智能
SAM-Med | 英伟达基于SAM提出医学图像标注效率神器
SAM-Med | 英伟达基于SAM提出医学图像标注效率神器
919 0
|
算法 Java C++
Java中的标号(Labels)与标签语句(Labeled Statements)深入解析
Java中的标号(Labels)与标签语句(Labeled Statements)深入解析
923 0
|
安全 Linux 开发者
Linux笔记之ldd命令详解
`ldd`命令是Linux环境下一个非常实用的工具,用于显示一个程序运行时所需的共享库依赖。它帮助开发者和系统管理员快速诊断程序运行问题,特别是在处理"找不到库文件"或者"错误的库文件版本"等错误时。然而,出于安全的考虑,对于不信任的可执行文件,应该慎用 `ldd`命令,可以考虑使用其他工具如 `objdump`。总的来说,懂得如何妥善且安全地使用 `ldd`,对于维护一个稳定和高效的Linux系统来说,是非常重要的。
1336 9

热门文章

最新文章