Requests
01.requests基础
requests:是python用来发送http请求的一个第三方库
1.发送请求获取响应
requests.get(url) - 发送get请求
requests.post(url) - 发送post请求
response = requests.get(‘https://movie.douban.com/top250’, headers=headers)
2.获取响应内容
1)状态码
code = response.status_code
print(code)
if code == 200:
print(“请求成功, 后续获取返回的数据”)
else:
print(“请求失败”)
2) 修改返回数据的编码方式(一般针对文本数据乱码的时候)
设置的值是网页源代码中charset的值
response.encoding = 'utf-8'
#### 3) 获取响应体(服务器返回的数据)
# a.获取文本数据(返回数据是网页源代码)
data = response.text
print(data)
# b.获取json数据(返回的数据是json格式的数据):
response.json()
# c.获取源数据/二进制数据:
print(response.content)
02.参数
1.参数
def argument():
"""
参数: 发送请求的时候客户端发送给服务器的数据就是参数
传参的方式:
1.拼接url(GET) - 将参数以'参数名=值'通过?拼接到url后面,多个参数之间用&链接
例如: http://api.tianapi.com/txapi/ncovabroad/index?key=c9d408fefd8ed4081a9079d0d6165d43
2.给参数data赋值(GET/POST) - 将所有的参数以键值对的形式创建一个字典,然后将字典赋给data
"""
# 方法一
# url = 'http://api.tianapi.com/txapi/ncovabroad/index?key=c9d408fefd8ed4081a9079d0d6165d43'
# response = requests.get(url)
# 方法二
url = 'http://api.tianapi.com/txapi/ncovabroad/index'
arguments = {'key': 'c9d408fefd8ed4081a9079d0d6165d43'}
response = requests.get(url, params=arguments)
print(response.json())
# 获取响应头
print(response.headers)
2.请求头
requests.get/post(url(请求地址), params(参数),…, headers(请求头), proxy(代理))
def requests_header():
"""
"""
headers = {
'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36"
}
url = 'https://movie.douban.com/top250'
response = requests.get(url, headers=headers)
if response.status_code == 200:
print(response.text)
else:
print("请求失败")