post 请求通常都会带数据 Payloads,当然也会需要 Header、OAuth,发送方式如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
import requests from requests.auth import HTTPBasicAuth
if __name__ == '__main__': url = 'https://httpbin.org/anything' headers = {'user-agent': 'my-app/ 0.0.1'} payloads = {'testing': 'better to follow'} auth = {"username": "testing", "password": "123123"} # 直接post r = requests.post(url, data=payloads) # post带header r = requests.post(url, headers=headers, data=payloads) # post带鉴权, auth类型跟get请求支持的auth类型相同。 r = requests.post(url, headers=headers, data=payloads, auth=HTTPBasicAuth('user', 'password'))
发送put请求
1 2 3 4 5 6 7 8
import requests
if __name__ == '__main__': # 直接发送put请求 # 如需要加header,auth,即参考post请求 r = requests.put('https://httpbin.org/put', data={'hello': 'test'}) print(r.text)
发送delete请求
1 2 3 4 5 6 7
import requests
if __name__ == '__main__': # 直接发送delete请求 r = requests.delete('https://httpbin.org/anything', data={'hello': 'test'}) print(r.text)
requests统一的request方法来发送各种请求
1 2 3 4 5 6
r = requests.request('get', 'https://httpbin.org/ip') r = requests.request('post', 'http://httpbin.org/post', data = {'key':'value'}) r = requests.request('put', 'http://httpbin.org/put', data = {'key':'value'}) r = requests.request('delete', 'http://httpbin.org/delete') r = requests.request('head', 'http://httpbin.org/get') r = requests.request('options', 'http://httpbin.org/get')