python如何爬取B站热门视频
发表于:2024-11-13 作者:千家信息网编辑
千家信息网最后更新 2024年11月13日,这篇文章主要介绍python如何爬取B站热门视频,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所
千家信息网最后更新 2024年11月13日python如何爬取B站热门视频
这篇文章主要介绍python如何爬取B站热门视频,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
代码如下
import requestsfrom lxml import etreeimport xlwtimport os# 爬取b站热门视频信息def spider(): video_list = [] url = "https://www.bilibili.com/ranking?spm_id_from=333.851.b_7072696d61727950616765546162.3" html = requests.get(url, headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"}).text html = etree.HTML(html) infolist = html.xpath("//li[@class='rank-item']") for item in infolist: rank = "".join(item.xpath("./div[@class='num']/text()")) video_link = "".join(item.xpath(".//div[@class='info']/a/@href")) title = "".join(item.xpath(".//div[@class='info']/a/text()")) payinfo = "".join(item.xpath(".//div[@class='detail']/span/text()")).split("万") play = payinfo[0] + "万" comment = payinfo[1] if comment.isdigit() == False: comment += "万" upname = "".join(item.xpath(".//div[@class='detail']/a/span/text()")) uplink = "http://" + "".join(item.xpath(".//div[@class='detail']/a/@href")) hot = "".join(item.xpath(".//div[@class='pts']/div/text()")) video_list.append({ 'rank': rank, 'videolink': video_link, 'title': title, 'play': play, 'comment': comment, 'upname': upname, 'uplink': uplink, 'hot': hot }) return video_listdef write_Excel(): # 将爬取的信息添加到Excel video_list = spider() workbook = xlwt.Workbook() # 定义表格 sheet = workbook.add_sheet("b站热门视频") # 添加sheet的name xstyle = xlwt.XFStyle() # 实例化表格样式对象 xstyle.alignment.horz = 0x02 # 字体居中 xstyle.alignment.vert = 0x01 head = ['视频名', 'up主','排名', '热度','播放量','评论数'] for h in range(len(head)): sheet.write(0, h, head[h], xstyle) i = 1 for item in video_list: # 向单元格(视频名)添加该视频的超链接 if '"' in item["title"]: item["title"] = item["title"].split('"')[1] title_data = 'HYPERLINK("'+item["videolink"]+'";"'+item["title"]+'")' # 设置超链接 sheet.col(0).width = int(256 * len(title_data) * 3/5) # 设置列宽 sheet.write(i, 0, xlwt.Formula(title_data), xstyle) name_data = 'HYPERLINK("'+item["uplink"]+'";"'+item["upname"]+'")' sheet.col(1).width = int(256 * len(name_data) * 3/5) sheet.write(i, 1, xlwt.Formula(name_data), xstyle) sheet.write(i, 2, item["rank"], xstyle) sheet.write(i, 3, item["hot"], xstyle) sheet.write(i, 4, item["play"], xstyle) sheet.write(i, 5, item["comment"], xstyle) i += 1 # 如果文件存在,则将其删除 file = "b站热门视频信息.xls" if os.path.exists(file): os.remove(file) workbook.save(file)if __name__ == '__main__': write_Excel()
结果展示:
以上是"python如何爬取B站热门视频"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
视频
热门
信息
内容
篇文章
表格
链接
代码
价值
兴趣
单元
原作
原作者
商业
图片
字体
实例
对象
小伙
小伙伴
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全培训解决方案
什么是网路数据库
英雄联盟服务器代表什么
天津常见软件开发收费
上海培训网络技术班
数据库原理 上机作业答案
学校支部书记调查网络安全
益阳正规软件开发中介
制作服务器监控工具
省级网络安全应急指挥中心建设
病毒和网络安全漏洞检测制度
湖南省极闪网络技术
男士软件开发送什么礼物好
服务器限速软件
电信网络安全不烦恼
深圳市联华网络技术开发
上海飞耕网络技术
通信网络技术课件
计算机网络技术2016电子书
中国电信网络安全信安部
网络技术应用电子版
金山区led大屏服务器
前端五种语言数据库
美国网络安全认证
天津联想服务器虚拟化安装服务器
联想网络安全等级保护
mac怎么安装微服务器
创客照妖镜下载数据库来源
移动终端软件开发技术是啥
简单软件开发c