requests.get方法
用于實作使用get方法發送http請求,get方法主要是用來擷取資源
根據接口需求來确定是不是使用get方法
使用get通路無參接口,檢視狀态碼、響應體和響應正文的資料類型
get通路無參接口,檢視狀态碼、響應體和響應正文的類型
③響應類型:res.headers[‘content-type’]
<1>響應類型是開發設定的響應正文的類型
headers是響應頭
④json類型的響應正文:res.json()
<1>隻能用于檢視json類型的響應結果,json()用于将json字元串轉為python字典
<2>對比
a)如果響應類型是text/html,隻能使用res.text檢視響應正文(不能使用res.json(),會報錯)
b)res.text看到的内容是開發人員寫的代碼的原始樣式(除漢字,漢字會顯示為unicode編碼,也叫json字元串)
c)res.json()會對json字元串進行格式化(統一格式),所有鍵用單引号定界,冒号後面加1個空格,逗号後面加1個空格
d)如果響應類型是application/json(簡稱json),使用res.text、res.json()都可以,但常用res.json()
e)res.text的結果是字元串格式,res.json()的結果是字典格式
res=requests.get(url, params)
1)params表示發送給接口位址的參數,代表需要接口處理的資料
2)params多數情況下是一個字典格式,其中參數名作為鍵,參數值作為值,形如:{‘參數名1’:值1, ’參數名2’:值2}
3)可以把參數放到url的末尾,但很少使用
url='http://ip/應用名/接口名/?參數名=值'
這個叫字元串,單引号是字元串的定界符
第一個單引号表示開始 第二個單引号表示結束
字典:
x = {"a":"hello","b":"3"}
第一使用大括号
第二a,b叫鍵不能重複
第三hello、3叫資料,英文冒号是固定寫法
第四x是字典名
字典裡面的鍵可以使用單引号或者雙引号
json中的鍵隻能使用雙引号
requests.get(url,params={"參數名":值})
參數名要加引号,值如果是字元串也要加引号
requests.get(url,headers)
headers叫請求頭,用于指定請求的附加資訊
請求頭明面看不到,但是可以通過抓包工具可以看到,代碼也可以看到
指定請求頭,可以用來模拟客戶使用的浏覽器、作業系統以及版本
headers用于指定請求頭資訊,通常用來指定來發送請求的附加資訊,如:
模拟浏覽器,作業系統的名稱、版本、位數等
coolkie session token等通常也會放在請求頭中
headers一般使用字典形式:
headers={'user-agent':'ie/8(windows nt 6.1;win64;x64)'}
# windows nt 6.1 代表 win7系統
# win64 64位作業系統
headers={"user-agent":"android/9"}
# android/9模拟安卓9版本作業系統
網絡爬蟲經常使用,在通路被網站攔截後,就模拟其他浏覽器或作業系統等進行爬蟲
作者:{tester小新}