上传文件
注意我们使用 files = ** 这里面的files是一个打开的文件对象
import requests
url = "http://httpbin.org/post?a=Ok"
textfile = {"file":open("request_test.py","rb")} # 一般
response2 = requests.post(url,files=textfile)
print(response2.text)
标准化后的数据的样子
{
"args": {
"a": "Ok"
},
"data": "",
"files": {
"file": "# encoding:utf-8\n\n\"\"\"\n\u4ecb\u7ecdrequests\u7684\u57fa\u7840\u4fe1\u606f\n\n\"\"\"\n\n\nimport requests\nr = requests.get(\"http://www.baidu.com\")\n\nprint(type(r)) # <class 'requests.models.Response'>\nprint(r.status_code) # 200\nprint(r.url) # http://www.baidu.com/\nprint(r.headers) #{'Cache-Control': 'private, no-cache, no-store, proxy-revalidate, no-transform', 'Connection': 'keep-alive', 'Content-Encoding': 'gzip', 'Content-Type': 'text/html', 'Date': 'Thu, 25 Nov 2021 08:56:15 GMT', 'Last-Modified': 'Mon, 23 Jan 2017 13:27:52 GMT', 'Pragma': 'no-cache', 'Server': 'bfe/1.0.8.18', 'Set-Cookie': 'BDORZ=27315; max-age=86400; domain=.baidu.com; path=/', 'Transfer-Encoding': 'chunked'}\nprint(r.cookies) # <RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>\nprint(r.content) # \u7f51\u9875\u5185\u5bb9\nprint(type(r.content)) # <class 'bytes'>\nprint(r.text) # \u7f51\u9875\u5185\u5bb9\nprint(type(r.text)) # <class 'str'>\nprint(r.history) # []\nprint(r.encoding) # ISO-8859-1\nprint(r.is_redirect) # \u662f\u5426\u91cd\u5b9a\u5411 False\nprint(r.links) # \u5b50\u94fe\u63a5 {}"
},
"form": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Content-Length": "1180",
"Content-Type": "multipart/form-data; boundary=e4c064ed131e71b4b8ed50f4972e8fcf",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.25.1",
"X-Amzn-Trace-Id": "Root=1-619f54bf-3d7ed1f054e5ed2f3ec2c63f"
},
"json": null,
"origin": "xxx.xxx.xxx.xx",
"url": "http://httpbin.org/post?a=Ok"
}
cookies的获取
cookies的获取,用于展示cookies的数据
import requests
headers = {"User-Agent": "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0);"}
r = requests.get("https://www.baidu.com/",headers=headers)
print(r.cookies)
for key, value in r.cookies.items():
print(key + ' = ' + value)
数据的展示
<RequestsCookieJar[<Cookie BAIDUID=447CEE48BDC3A786AD10C965416C4207:FG=1 for .baidu.com/>, <Cookie BIDUPSID=447CEE48BDC3A786EDFE96B739FEA2A7 for .baidu.com/>, <Cookie H_PS_PSSID=34446_35105_31253_35239_35049_34584_34517_35246_34871_26350_35145_35301 for .baidu.com/>, <Cookie PSTM=1637831971 for .baidu.com/>, <Cookie BDSVRTM=0 for www.baidu.com/>, <Cookie BD_HOME=1 for www.baidu.com/>]>
BAIDUID = 447CEE48BDC3A786AD10C965416C4207:FG=1
BIDUPSID = 447CEE48BDC3A786EDFE96B739FEA2A7
H_PS_PSSID = 34446_35105_31253_35239_35049_34584_34517_35246_34871_26350_35145_35301
PSTM = 1637831971
BDSVRTM = 0
BD_HOME = 1
cookie信息进行登录
这个没有信息展示,在这个部分代码的格式如下
import requests
headers = {
'Cookie': 'xxxxxx',
'Host': 'xxxxx',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36',
}
r = requests.get('xxxxxxx', headers=headers)
print(r.text)