本文主要是介绍猿人学第17题题解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 猿人学第17题题解
这道题主要考察的是对于http2.0请求的爬取措施。
现在http2.0请求使用requests可以请求成功,但是对于一些反爬手段强的反而requests无法满足需求。此时就需要用到httpx或hyper这类支持http2的库。我这里使用的是httpx。
代码贴在如下:
import httpxurl = "https://match.yuanrenxue.com/api/match/3?page=1"
headers = {'authority': 'match.yuanrenxue.com','cookie': 'sessionid=xxxx','referer': 'https://match.yuanrenxue.com/match/3','user-agent': 'yuanrenxue.project',
}client = httpx.Client(http2=True)
resp = client.get(url=url, headers=headers)
print(resp.status_code)
print(resp.text)
第二种用法:
import httpxurl = "https://match.yuanrenxue.com/api/match/3?page=1"
headers = {'authority': 'match.yuanrenxue.com','cookie': 'sessionid=6700jbpbvuy9grrhknysq5wwp4h9z8l2','referer': 'https://match.yuanrenxue.com/match/3','user-agent': 'yuanrenxue.project',
}with httpx.Client(headers=headers,http2=True) as client:response = client.get(url)result = response.json()print(result)
拿下来的json数据,对其进行相应的解析即可
这篇关于猿人学第17题题解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!