admin管理员组

文章数量:1619291

距离上次写爬虫文章已经过了许久了,之前写过一篇20行Python代码爬取王者荣耀全英雄皮肤
,反响强烈,其中有很多同学希望我再写一篇针对英雄联盟官网的皮肤爬取,但苦于事情繁多,便一拖再拖,一直拖到了现在,那么本篇文章我们就一起来学习一下如何爬取英雄联盟全英雄皮肤。

爬取代码非常简单,从上到下可能只需要写30行左右就能完成,但重要的是分析过程,在此之前,我们先来了解一下本篇文章需要用到的模块。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

requests模块介绍

首先是requests模块,这是一个模拟浏览器请求的模块,我们可以通过它来获取网页上的信息,比如百度:

import requests

url = 'http://www.baidu'
response = requests.get(url)
print(response.text)
12345

运行结果:


通过get函数就能够向指定参数的url发送请求,得到的response对象中封装了很多响应的信息,其中的text即为响应内容,注意到获取的内容里有乱码,这是编解码不一致造成的,只需先获取二进制数据,然后重新解码即可:

import requests

url = 'http://www.baidu'
response = requests.get(url)
print(response.content.decode())
12345

运行结果:

json模块

json模块可以对json字符串和Python数据类型进行相互转换,比如将json转换为Python对象:

import json

json_str = '{"name":"zhangsan","age":"20"}'
rs = json.loads(json_str)
print(type(rs))
print(rs)
123456

使用loads函数即可将json字符串转为字典类型,运行结果:

<class 'dict'>
{'name': 'zhangsan', 'age': '20'}
12

而若是想将Python数据转为json字符串,也非常简单:

import json

str_dict = {'name': 'zhangsan', 'age': '20'}
json_str = json.dumps(str_dict)
print(type(json_str))
print(json_str)
123456

通过dumps函数即可将Python数据转为json字符串,运行结果:

<class 'str'>
{"name": "zhangsan", "age": "20"}
12

准备工作

前面介绍了两个模块,通过这两个模块我们就能够完成这个程序了。
在正式开始编写代码之前,我们首先需要分析数据来源,来到官网:https://lol.qq/main.shtmlÿ

本文标签: 英雄皮肤代码简单联盟