標籤:load add sql 資料 encoding 河南省 from login lib
python的網路請求,主要是進行Http協議類介面調用,進行介面測試等。
一、urllib庫,python內嵌的庫,不太好用。
from urllib import request,parseimport json# url = ‘http://baidu.com‘# req = request.urlopen(url) #開啟一個url# content = req.read().decode()# fw = open(‘nnzhp.html‘, ‘w‘, encoding=‘utf-8‘)# fw.write(content)# #網路爬蟲,從其他的網站上,擷取一些有用的內容#get請求# url = ‘http://www.baidu.com/‘# req = request.urlopen(url)# content = req.read().decode() #擷取返回結果# res_dic = json.loads(content) #返回的結果轉為字典# if res_dic.get(‘error_code‘) == 0:# print(‘測試通過.‘)# else:# print(‘測試失敗‘,res_dic)#post請求url = ‘http://xxxxxx/api/user/login‘data = { ‘usernmae‘:‘admin‘, ‘passwd‘: ‘aA123456‘}#請求資料data = parse.urlencode(data)# print(parse.urlencode(data))#urlencode,自動給你拼好參數req = request.urlopen(url, data.encode()) #發送Post請求print(req.read().decode())
二、requests模組,好用的模組
import requestsimport random#1、發get請求# url = ‘http://xxxxxx/api/user/stu_info‘# data = {‘stu_name‘:‘xxxx‘} #請求資料# req = requests.get(url, params=data)# print(req.json())# print(req.text)# print(type(req.json())) #dict# print(type(req.text)) #str#返回的都是什麼#返回的類型是什麼#中文的好使嗎#2、發post請求url = ‘http://xxxxxxx/api/user/login‘data = {‘username‘:‘xxxxx‘,‘passwd‘: ‘xxxxx‘}#請求資料req = requests.post(url, data)print(req.json())#3、入參是json類型的# url = ‘http://xxxxxx/api/user/add_stu‘# phone = random.randint(10000000000,99999999999)# data = {# "name":"xxxx",# "grade":"天蠍座",# "phone":phone,# "sex":"女",# "age":28,# "addr":"河南省濟源市北海大道32號"# }# req = requests.post(url, json=data)# print(req.json())#4、入參是json類型的# url = ‘http://xxxxxxx/api/user/gold_add‘# data = {‘stu_id‘:468,‘gold‘:120000}# req = requests.post(url, data, cookies={‘niuhanyang‘:‘337ca4cc825302b3a8791ac7f9dc4bc6‘})# print(req.json())#5、添加header# url = ‘http://xxxxxxx/api/user/all_stu‘# header = {‘Referer‘: ‘http://api/xxxxxxx/‘}# req = requests.get(url, headers=header)# print(req.json())#{‘error_code‘: 4, ‘msg‘: ‘請求來路不正確‘}#6、上傳檔案# url = ‘http://xxxxxxxx/api/file/file_upload‘# # data = {‘file‘:open(‘筆記-day08.txt‘,encoding=‘utf-8‘)} #上傳檔案# data = {‘file‘:open(‘12222.jpg‘, ‘rb‘)} #上傳圖片# req = requests.post(url, files=data)# print(req.json())#7、下載圖片#http://xxxxx/wp-content/uploads/2018/01/soup.jpg# url = ‘http://wwwxxxxx/wp-content/uploads/2018/01/soup.jpg‘# req = requests.get(url)# print(req.content)#返回的二進位的東西## fw = open(‘s.jpg‘, ‘wb‘)# fw.write(req.content)# url = ‘http://wwwxxxxxx/‘# req = requests.get(url)# print(req.content)#返回的二進位的東西## fw = open(‘pymysql.html‘, ‘wb‘)# fw.write(req.content)#http://up.mcyt.net/?down/46779.mp3url = ‘http://up.mcyt.net/?down/46779.mp3‘req = requests.get(url)print(req.content)#返回的二進位的東西fw = open(‘aaaa,.mp3‘, ‘wb‘)fw.write(req.content)
python學習筆記-day8-3-【python 網路請求及requests模組】