一、urllib模組
urllib模組是乙個標準模組,直接import urllib即可,在python3裡面只有urllib模組,在python2裡面有urllib模組和urllib2模組。
urllib模組太麻煩了,傳引數的話,都得是bytes型別,返回資料也是bytes型別,還得解碼,想直接把返回結果拿出來使用的話,還得用json,發get請求和post請求,也不通,使用比較麻煩
1 importjson2 from urllib importrequest3 from urllib importparse4
5 #【get請求】
6 url = 『
8 data=9
10 tmpdata=parse.urlencode(data) #1、將資料變為k=v模式
11 print(tmpdata)12 #介面+引數
13 tmpurl=url+『?『+tmpdata #介面引數拼接
14 print(tmpurl)15 res = request.urlopen(tmpurl) #請求介面
16 resforread = res.read() #通過read安啊獲取返回值結果,返回值結果為bytes型別
17 print(res.read())18 #待b的是bytes型別 bytes型別轉成str型別:後面加.decode()
20 resforstring = resforread.decode() #通過decode將bytes轉成str型別
21 print(resforstring)22
23 #2、想得到引數裡面某乙個字段,要先通過json變成字典的形式,然後再取值
24 resfordict = json.loads(resforstring) #通過json將字典轉成字典
25 print(resfordict)26
27 #3、必須符合字典的格式才能取值
28 #加上
30 #【post】請求
31 url = 『
32 data=33 tmpdata = parse.urlencode(data) #k=v
35 #post 請求寫法
36 res=request.urlopen(url,tmpdata.encode()) #post請求 引數1為介面位址;引數2為bytes
37 print(res.read().decode())38 #post和get請求區別在於 urlopen時,get發的是介面和引數的平層字串
二、requests模組
需pip install requests匯入
requests 基於 urllib ,採用apache2 licensed 開源協議的 http 庫。它比 urllib 更加方便,可以節約我們大量的工作,完全滿足 http 測試需求。 目前很多python 爬蟲也使用requests 庫
功能特性
keep-alive & 連線池
國際化網域名稱和 url
帶持久 cookie的回話
瀏覽器式的 ssl 認證
自動內容解碼
基本/摘要式的身份認證
優雅的 key/value cookie
自動解壓
unicode 響應體
http(s)**支援
檔案分塊上傳
連線超時
分塊請求
支援 .netrc (使用者配置指令碼檔案)
requests.get() get請求
requests.post() post請求
requests.delete() delete請求
requests.put() put請求
【get請求】
1 importrequests2
3 #【get】請求
4 url = 『
5 data=6
7 res =requests.get(url,data).text8 print(res) #返回的是字串格式的結果
10 #1、如果需要返回的是字典格式 後面加.json
11 res =requests.get(url,data).json()12 print(res)
【post】請求
1 #【post】請求
2 url = 『
3 data=4
5 #res = requests.post(url,data).text
6 res =requests.post(url,data).json()7 print(res)
【入參傳json】
1 #【入參是json】
2 url = 『
3 data = 4
5 res = requests.post(url,json=data).json()6 print(res) #介面要求入參是json型別,可以通過在post請求中指定json
【充值金幣介面】
1 #【充值金幣介面】
2 #1、先登入 獲取sign
3 url = 『
4 data=5
6 #res = requests.post(url,data).text
7 res =requests.post(url,data).json()8 print(res)9
10 #2、生成cookie
11 cookie = 12 url = 『
13 data = 14 res = requests.post(url,data,cookies=cookie).text #通過cookies傳遞cookie
15 print(res)
【獲取header】
1 url = 『
2 header = 3 res = requests.get(url,headers=header).text4 print(res)
【傳入檔案】
1 url = 『
2 #通過files引數將檔案傳遞到伺服器上
3 res = requests.post(url,files=).text4 print(res)
python 登陸介面
1 coding utf 8 2 author steven kang 3 4 import os,sys,getpass 匯入os,sys,getpass 模組 5 u 0 使用者的迴圈次數 6 while u 3 7 username input 請輸入您的使用者名稱 使用input 讓使用者輸...
python 登陸介面
登陸介面要求 輸入使用者名稱密碼 認證成功後顯示登陸成功資訊 輸錯三次後鎖定並追加到user lock檔案 一 只針對帳號檔案裡的使用者進行判斷並鎖定,針對使用者和密碼各有三次錯誤重試機會。1 流程圖如下 2.如下1 usr bin env python 2import sys,os,getpass...
python登陸介面
user jack password 123 count 0 def write lock list name 將輸入的使用者名稱寫入檔案當中 file open lock list w file.writelines name file.close def read lock list name ...