python介面 python 介面

2021-10-11 05:33:57 字數 2972 閱讀 2756

一、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 ...