Request
requests模块
- urllib模块
- requests模块
requests模块:python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率杉作用:模拟浏览器发请求。
使用方式(requests模块的编码流程):
- 指定url
- 发起请求
- 获取响应数据一持久化存储
环境安装:pip install requests
常规流程
import requests
# 指定url
url = 'https://cn.bing.com/'
# 发起请求
r = requests.get(url)
# 获取相应数据
page_data = r.text
print(page_data)
# 数据存储
with open('./bing.html','w',encoding='utf-8') as f:
f.write(page_data)
实战巩固
获取指定词条对应的搜索结果页面(简易网页采集器)
- UA:UserAaent(请求载体的身份标识)
- UA伪装:门户网站的服务器佘检测对应请求的载体身份标识。如果检测到请求的载体身份标识不是浏览器一般拒绝访问,我们可以修改UA让服务器认为
def getdata(keyword):
# 指定url https://cn.bing.com/search?q=
url = f'https://cn.bing.com/search?'
# UA伪装
headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36 Edg/96.0.1054.29"
}
#处理url所带的参数,封装到字典
param = {
'q':keyword
}
# 发起请求,带3参数
r = requests.get(url = url,params=param,headers = headers)
# 获取相应数据
page_data = r.text
print(page_data)
# 数据存储
with open(f'{
keyword}.html','w'