1. 程式人生 > >requests 模組

requests 模組

import requests

""" # 1. 方法     requests.get     requests.post      requests.put      requests.delete      ...     requests.request(method='POST') """ # 2. 引數 """     2.1  url     2.2  headers     2.3  cookies     2.4  params     2.5  data,傳請求體                          requests.post(                 ...,                 data={'user':'alex','pwd':'123'}             )                          GET /index http1.1\r\nhost:c1.com\r\n\r\nuser=alex&pwd=123                  2.6  json,傳請求體             requests.post(                 ...,                 json={'user':'alex','pwd':'123'}             )                          GET /index http1.1\r\nhost:c1.com\r\nContent-Type:application/json\r\n\r\n{"user":"alex","pwd":123}     2.7 代理 proxies         # 無驗證             proxie_dict = {                 "http": "61.172.249.96:80",                 "https": "http://61.185.219.126:3128",             }             ret = requests.get("https://www.proxy360.cn/Proxy", proxies=proxie_dict)                               # 驗證代理             from requests.auth import HTTPProxyAuth                          proxyDict = {                 'http': '77.75.105.165',                 'https': '77.75.106.165'             }             auth = HTTPProxyAuth('使用者名稱', '密碼')                          r = requests.get("http://www.google.com",data={'xxx':'ffff'} proxies=proxyDict, auth=auth)             print(r.text)     -----------------------------------------------------------------------------------------     2.8 檔案上傳 files         # 傳送檔案             file_dict = {                 'f1': open('xxxx.log', 'rb')             }             requests.request(                 method='POST',                 url='http://127.0.0.1:8000/test/',                 files=file_dict             )                  2.9 認證 auth              內部:             使用者名稱和密碼,使用者和密碼加密,放在請求頭中傳給後臺。                              - "使用者:密碼"                 - base64("使用者:密碼")                 - "Basic base64("使用者|密碼")"                 - 請求頭:                     Authorization: "basic base64("使用者|密碼")"                      from requests.auth import HTTPBasicAuth, HTTPDigestAuth

        ret = requests.get('https://api.github.com/user', auth=HTTPBasicAuth('wupeiqi', 'sdfasdfasdf'))         print(ret.text)              2.10 超時 timeout          # ret = requests.get('http://google.com/', timeout=1)         # print(ret)              # ret = requests.get('http://google.com/', timeout=(5, 1))         # print(ret)              2.11 允許重定向  allow_redirects         ret = requests.get('http://127.0.0.1:8000/test/', allow_redirects=False)         print(ret.text)              2.12 大檔案下載 stream         from contextlib import closing         with closing(requests.get('http://httpbin.org/get', stream=True)) as r1:         # 在此處理響應。         for i in r1.iter_content():             print(i)                  2.13 證書 cert         - 百度、騰訊 => 不用攜帶證書(系統幫你做了)         - 自定義證書             requests.get('http://127.0.0.1:8000/test/', cert="xxxx/xxx/xxx.pem")             requests.get('http://127.0.0.1:8000/test/', cert=("xxxx/xxx/xxx.pem","xxx.xxx.xx.key"))     2.14 確認 verify =False  """

requests.get('http://127.0.0.1:8000/test/', cert="xxxx/xxx/xxx.pem")