requests是一个对开发人员非常友好的http库,它接口简单,灵活易用,平日里写爬虫程序,我便直接使用requests发送http请求,本文带你快速了解这个库的基本用法: 发送get请求, 发送post请求, 下载图片, 获取json数据等
import requests
res = requests.get('http://www.baidu.com')
print(res.status_code) # 服务器响应状态码
print(res.text)
status_code是Response状态码,200表示服务器成功响应,res.text是返回的html源码
from PIL import Image
from io import BytesIO
import requests
res= requests.get('https://car2.autoimg.cn/cardfs/product/g30/M02/CE/06/1024x0_1_q95_autohomecar__ChcCSVxizROACoEpAAWmLWEQMgQ024.jpg')
print(res.status_code)
i = Image.open(BytesIO(res.content))
i.show()
content是Response数据的2进制形式,text是字符串形式,使用Image的show方法可以直接显示图片
import requests
res = requests.get('https://api.github.com/events')
print(res.json())
如果返回的数据是json格式的,那么可以直接使用json方法来获取数据,这样就不需要使用json.loads方法将res.text转换为python类型数据了
import requests
payload = {'name': '小明', 'age': '14'}
res = requests.post("http://httpbin.org/post", data=payload)
print(res.text)
httpbin.org 这个网站可以测试http请求和响应的各种信息,可以作为练习使用
requests可以想web浏览器那样为https请求验证SSL证书
import requests
print(requests.get('https://github.com', verify=True))
如果网站的SSL证书有问题,请求将会失败
import requests
res = requests.get('http://www.baidu.com')
print(res.headers)
QQ交流群: 211426309