时间:2021-05-23
最近需要大规模下载B站视频,同时要将下载好的视频用BV号进行重命名,最后上传至服务器。这个工作一开始我是完全手工完成的,通过游猴来下载,可是下载几十个视频还好,再多一点的话真是太烦了,而且生产力低下,因此诞生了编写脚本的想法。
一开始我需要在B站搜索关键词,然后不断点开视频后进行下载,同时在视频下载后还需要找到这个视频来修改BV号,效率实在太低,特别是当下载的视频多了,再返回来寻找它对应的BV号时也是个很繁琐的过程,因此决定进行编写python脚本。
本次的脚本可以大幅度提高工作效率,但是它并不是全自动完成任务的,毕竟我们用到了Bilibili唧唧。(唧唧真的很好用,其实也可以完全做成全自动,但我觉得没什么必要了,效率已经很高啦~)
大家如果还有什么更好的建议欢迎评论告诉我。
最后,给个赞吧,亲~
简要介绍一下工作流程:
(1)通过爬虫爬取一堆视频BV号,存放于txt文件中,如下所示:
(2)不断复制BV号,唧唧便会自动进行下载视频
(3)通过脚本将下载好的视频一键化改名
爬虫部分
1.依赖库
requestsl
xml
2.代码
相关讲解已在注释标注。
3.爬取结果
给出唧唧的链接,唧唧,很好用的小工具。
我们只需要将刚才爬取好的链接放在一边,不断复制BV号,然后唧唧进行下载即可。
唧唧下载好的视频如下所示:
为什么需要将它们进行改名呢,因为如果当视频数量越来越多时,比如几千几万时,通过名字便会越来越难以管理,同时也难以进行去重,很大概率会不断下载重复的视频。
在B站,BV号便是每个视频的“身份证”(主键),因此用其进行视频命名可以方便日后管理,同时也方便进行去重。
代码
'''author:Ericamdescription: 用于将下载下来的b站视频重命名,命名格式为bv号'''import osimport difflibif __name__ == '__main__': bvpath = os.path.join("D:/","Coding","python","Python爬虫") os.chdir(bvpath) d = {} ''' bvdownload.txt里存放bv号与title名 若之前爬虫爬取了几千个,而唧唧只下载了几百个,便可以将这些已下载的bv和title复制到 bvdownload.txt中,将已下载的视频进行改名 ''' with open("bvdownload.txt",'r',encoding='utf-8')as f: lines = f.readlines() for val in lines: val = val.strip("\n") data = val.split("\t") bv = data[0] title = data[1] d[title] = bv #视频存放位置 path = 'F:/bilibili视频/' os.chdir(path) videoList = os.listdir() #开始进行模糊匹配 for key in d: video = difflib.get_close_matches(key,videoList,1, cutoff=0.3) if len(video) == 0: continue video = video[0] #检查视频是否已存在,若存在则删除视频 if os.path.isfile(d[key]+".mp4") and os.path.isfile(video): os.remove(video) else: if os.path.isfile(video): os.rename(video,d[key]+".mp4") print("重命名完成!")结果演示
重命名完成的视频列表如下:
到此这篇关于python爬虫搭配起Bilibili唧唧的流程分析的文章就介绍到这了,更多相关python爬虫Bilibili内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Python爬虫可以爬取的东西有很多,Python爬虫怎么学?简单的分析下:如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数
制作爬虫的步骤制作一个爬虫一般分以下几个步骤:分析需求分析网页源代码,配合开发者工具编写正则表达式或者XPath表达式正式编写python爬虫代码效果预览运行效
floor函数和ceil函数互相搭配起来可以使php处理的数据更加真实可靠。一、先来看floor函数:语法:floatfloor(floatvalue)说明:返
这篇博客是自己《数据挖掘与分析》课程讲到正则表达式爬虫的相关内容,主要简单介绍Python正则表达式爬虫,同时讲述常见的正则表达式分析方法,最后通过实例爬取作者
这几天正好有需求实现一个爬虫程序,想到爬虫程序立马就想到了python,python相关的爬虫资料好像也特别多。于是就决定用python来实现爬虫程序了,正好发