python 脚本下载bilibili右上角表情包

python 脚本下载bilibili右上角表情包

B站是个十分有趣的地方,今天就来下载一下B站官网的表情包图片。

事实上,B站的表情包全部在一个json文件中,只要请求即可。项目地址github主页

  • python的urllib库来进行网络请求
  • python json库进行json数据解析

先来看以下上面的json请求后的结果:
在这里插入图片描述
我们需要title和下载链接即icon那一行,所以接下来就开始coding吧。

import urllib.request as rq
import os
import json

url = "https://www.bilibili.com/index/index-icon.json"
#下载路径
save_dir = "bilibili_images/"

res = rq.urlopen(url)
json_str = json.loads(res.read())

if not os.path.exists(save_dir):
    os.mkdir(save_dir)

# 获得全部的图片列表
images = json_str["fix"]
total = len(images)
print('total ', total, ' images' )

for index, im in enumerate(images):
    if index % 10 == 0:
        print('downloaded ',index+1,' images')
    title, icon_url = im["title"], im["icon"]

    # 下载图片
    rq.urlretrieve("http:" + icon_url, filename=os.path.join(save_dir, title + "." + icon_url.split('.')[-1]))

print("\ndone.")

全部下载了,可以愉快地玩耍了。

Python中可以使用you-get库来下载Bilibili视频。你可以根据不同的需求选择下载整个视频、分p下载或单个文件下载。 对于下载整个视频或多个视频一次下载,你可以使用以下代码: ``` import sys from you_get import common # 提取信息 def get_i(url): sys.argv=["you-get","-i",url] common.main() # 基本下载 def get_o(url,pwd): sys.argv=["you-get","-o",pwd,url] common.main() # 指定格式下载 def get_type(url,pwd,type): sys.argv=["you-get","-F",type,"-o",pwd,url] common.main() pwd = "D:\\" type = "dash-flv360" # url是一个放着下载地址url的text文档 with open("url","r") as f: for i in f.readlines(): get_type(i.strip(), pwd, type) ``` 对于分p下载,你可以使用以下代码: ``` import sys from you_get import common # 提取信息 def get_i(url): sys.argv=["you-get","-i",url] common.main() # 基本下载 def get_o(url,pwd): sys.argv=["you-get","-o",pwd,url] common.main() # 指定格式下载 def get_type(url,pwd,type): sys.argv=["you-get","-F",type,"-o",pwd,url] common.main() # 分集视频下载 def get_type(url,pwd): sys.argv=["you-get","-o",pwd,"-l",url] common.main() pwd = "D:\\" type = "dash-flv360" url = "https://www.bilibili.com/video/BV1us411i7BB" get_type(url,pwd) ``` 对于单个文件下载,你可以使用以下代码: ``` import sys from you_get import common # 提取信息 def get_i(url): sys.argv=["you-get","-i",url] common.main() # 基本下载 def get_o(url,pwd): sys.argv=["you-get","-o",pwd,url] common.main() # 指定格式下载 def get_type(url,pwd,type): sys.argv=["you-get","-F",type,"-o",pwd,url] common.main() pwd = "D:\\" type = "dash-flv360" url = "https://www.bilibili.com/video/BV1AU4y147Pj" get_o(url,pwd) ```
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值