小伙伴们大多数都有玩过英雄联盟吧?大多都喜欢各个英雄的各种皮肤,今天和小编一起将所有英雄的皮肤下载下来,当做桌面、手机壁纸吧。
分析
打开 LOL 的英雄资料页:(https://lol.qq .com/data/info-heros.shtml),并且打开 F12 控制面板的网络界面。可以看到有一个 hero_list.js,里面就可以获取到各个英雄的 Id。
然后进入英雄界面,在网络面板中就有一个以英雄 Id 所关联的 js。
可以得到英雄的各个资料,heroName、heroTitle、name 以及 mainImg。
代码
下面是用到的各个模块。
1 |
|
代码比较简单,就是用 requests 的 get() 方法读取页面和下载图片,这里使用了 gevent 协程非阻塞式下载图片。将 gevent 协程设置为非阻塞的需要给它打个补丁,这里选用的是 monkey 第三方模块。一个协程设置了 10 个英雄下载页面。
1 |
|
总结
本文介绍了如何用 requests 和非阻塞的协程下载英雄联盟的皮肤。喜欢皮肤的小伙伴们可以每天换一张了。