1. get 请求
1 import requests
2 url = 'http://api.xxxx.cn/api/user/stu_info?stu_name=xiaohei'
3 data = {'stu_name':'小黑'}
4 req = requests.get(url,params=data) #发get请求
5 print(req.json())
6 print(type(req.json())) #返回类型为:字典
7 print(req.text)
8 print(type(req.text)) #返回类型为:字符串的json串
2. post 请求
import requests
url = 'http://api.xxxx.cn/api/user/login'
data = {'username':'joseph','passwd':'aA123456'}
req = requests.post(url,data)
print(req.json())
3. 上传文件
import requests,json
url = 'http://api.xxxx.cn/api/file/file_upload'
#上传txt等格式
# data = {
# 'file':open('baidu.html',encoding='utf-8')
# }
#上传图片格式
data = {
'file':open(r'C:\Users\Administrator\Desktop\joseph.PNG','rb')
}
req = requests.post(url,files = data)
# print(req.json()) #返回成字典,
# 如果报错,json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
#说明返回不成字典,要用req.text
print(req.text)
4. 入参为json类型
import requests,random
phone = random.randint(10000000000,99999999999)
url = 'http://api.xxxx.cn/api/user/add_stu'
data = {
"name":"joseph",
"grade":"天蝎座",
"phone":phone,
"sex":"男",
"age":28,
"addr":"河南省济源市北海大道32号"
}
req = requests.post(url,json=data) #入参是json时,采用json=data
print(req.json())
5. 添加cookie
import requests,random
phone = random.randint(10000000000,99999999999)
url = 'http://api.xxxx.cn/api/user/gold_add'
data = {
"stu_id":468,
"gold":178
} #传入的参数
cookie = {'joseph':'337ca4cc825302b3a8791ac7f9dc4bc6'} #cookie
req = requests.post(url,data,cookies = cookie)
print(req.json())
6. 添加header
import requests
url = 'http://api.xxxx.cn/api/user/all_stu'
header = {
'Referer':'http://api.xxxx.cn/'
}
req = requests.get(url,headers= header)
print(req.json())
7. 下载图片
import requests
url = 'http://imgsrc.baidu.com/imgad/pic/item/9d82d158ccbf6c8154bdd5ccb63eb13533fa4008.jpg'
req = requests.get(url)
# res = req.content #req.content返回的是二进制
# print(res)
fw = open('s.jpg','wb')
fw.write(req.content)