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.")
全部下载了,可以愉快地玩耍了。