一、爱心墙
通过爬虫搜集到粉丝的头像,然后利用 PIL 库拼接出爱心墙的形状
二、代码分析
1.头像爬取
在个人中心点击我的粉丝便可以看到自己的粉丝
通过抓包可知对应的接口为:
> url ='https://me.csdn.net/api/relation/index?pageno=1&pagesize=20&relation_type=fans'# 接口地址
那么,可以定义一个函数来获取粉丝的信息:
def get_fansInfo():
'''
获取粉丝相关信息
'''
url = 'https://me.csdn.net/api/relation/index?pageno=%d&pagesize=%d&relation_type=fans' # 接口地址
cookies = {
} # 用户登陆cookies
headers = {
# 请求头
'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0',
'Accept': 'application/json, text/plain, */*',
'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2',
'Referer': 'https://i.csdn.net/',
'Origin': 'https://i.csdn.net',
'Connection': 'keep-alive',
'TE': 'Trailers',
}
# 获取粉丝总数
res = requests.get(url%(1,10),headers=headers,cookies=cookies)
res_json = res.json()
N_fans = res_json['data']['data_all']
print('一共有%d个粉丝'%N_fans)
# 获取全部粉丝数据
res = requests.get(url%(1,N_fans),headers=headers,cookies=cookies)
res_json = res.json()
return res_json
在返回的数据中,包括一个avatar字段,这个就是用户的头像地址
拿到头像