这是一个利用Python实现Temple Song模板半自动化的小工具
限于直接爬数据会被阿b弹验证码,所以本代码主要使用bilibili的api接口实现,在这里我使用了大佬们做的b站api接口的Python第三方库,原仓库已经404了,新仓库的地址和开发文档会在下面放出
这里的方法是基于Windows11系统的主要我也没Mac或者Linux,而且也应该没人会想着在手机上运行Python吧(
在这里放上源码可能很屎,有佬能改进的话也挺好的不得不说gpt蛮好用的,这段的时间格式化就是gpt写的
import asyncio
import datetime
from bilibili_api import video
async def main(BVID) -> None:
v = video.Video(bvid=BVID)# 实例化 Video 类
info = await v.get_info()# 获取信息
timestamp = info['pubdate'] # 时间戳
date_object = datetime.datetime.fromtimestamp(timestamp) # 时间戳转换为日期时间对象
time = date_object.strftime("%y/%m/%d") # 时间格式化
if len(time) >= 4 and time[3] == '0':
time = time[:3] + time[4:]
bv=info['bvid']#bv号
pic=info['pic']#封面
title=info['title']#标题
left="{{"
right="}}"
times="Temple Song|color=transparent"
bbid="|bb_id = "
song="|曲目 = "
btime="|投稿日期 = "
bcount= "|再生数量 = "
bilicount="BilibiliCount|id= "
image="|image link = "
#模板
module = (f"\n{left}{times}\n{bbid}{bv}\n{song}{title}\n{btime}{time}\n{bcount}{left}{bilicount}{bv}{right}\n{image}{pic}\n{right}\n")
if run == 'True' and BVID == 'BV1vb411Y7A6':
if bv == 'BV1vb411Y7A6' and pic == 'http://i0.hdslb.com/bfs/archive/d58b6de2016cf0251315a4030eccbbb527301098.jpg' and title == '洛天依,原创《夜间出租车》' and time == '19/2/21':
pass
else:
print(f"Warning:当前软件已经过时,请更新软件!")
input("按enter退出...")
exit()
else:
print(module)
input("Ctrl+C复制后按enter退出...")
if __name__ == "__main__":
run = 'True'
print('检查软件是否可以使用中...')
BV = 'BV1vb411Y7A6'
asyncio.run(main(BV))
print("检查完毕!欢迎使用")
print(f"\n使用办法:\n输入视频的bv号,将自动输出符合规范的Temple Song模板\n")
run = 'False'
BV = input("请输入视频的bv号:")
asyncio.run(main(BV))
主要用了先运行再检测再运行的办法,相较上一版更方便一些,能避免一些错误
对于exe:因为直接打包会有路径问题,所以暂且不考虑
环境:Windows11家庭中文版,安装有Python3.12.4,pip24.2
1.运行
pip3 install bilibili-api-python
2.双击打开文件并等待程序检查完毕后,弹出以下命令框
检查软件是否可以使用中...
[Request][20XX-XX-XX XX:XX:XX,XXX] 激活 buvid3: [XXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXinfoc] 成功
检查完毕!欢迎使用
使用办法:
输入视频的bv号,将自动输出符合规范的Temple Song模板
请输入视频的bv号:
3.随后输入“BV1vb411Y7A6”(洛天依-夜间出租车)后命令框输出
{{Temple Song|color=transparent
|bb_id = BV1vb411Y7A6
|曲目 = 洛天依,原创《夜间出租车》
|投稿日期 = 19/2/21
|再生数量 = {{BilibiliCount|id=BV1vb411Y7A6}}
|image link = http://i0.hdslb.com/bfs/archive/d58b6de2016cf0251315a4030eccbbb527301098.jpg
}}
Ctrl+C复制后按enter退出...
最后退出,这里是模板效果