python網絡編程----requests模塊
阿新 • • 發佈:2018-02-10
brush 基礎 gpo sched head get r.js 第一個 agent
python訪問網站可以用標準模塊--urllib模塊(這裏省略),和requests(安裝-pip install requests)模塊,requests模塊是在urllib的基礎上進行的封裝,比urllib模塊功能更強到,易用
import json,requests #發送get請求 url = ‘http://api.nnzhp.cn/api/user/stu_info?stu_name=小黑馬‘ req = requests.get(url) #發送get請求 print(req.text) #獲取結果,返回string/html等用text print(req.json()) #獲取結果直接就是字典,等價於 print(json.loads(req.text)) #json串轉化成字典,註:返回的必須是json串,才能用.json方法。 #發送post請求 url = ‘http://api.nnzhp.cn/api/user/login‘ data = {‘username‘:‘niuhanyang‘,‘passwd‘:‘aA123456‘} req = requests.post(url,data) #發送post請求,第一個參數是url,第二個參數是請求參數 print(req.json()) #入參是json的 url = ‘http://api.nnzhp.cn/api/user/add_stu‘ data = {‘name‘:‘丁飛‘,‘grade‘:‘巨蟹座‘,‘phone‘:31971891223} req = requests.post(url,json=data) #發送post請求,第一個參數是url,第二個參數是請求參數 print(req.json()) #添加cookie url = ‘http://api.nnzhp.cn/api/user/gold_add‘ data = {‘stu_id‘:231,‘gold‘:1000} cookie = {‘niuhanyang‘:‘6d195100b95a43046d2e385835c6e2c2‘} req = requests.post(url,data,cookies=cookie) print(req.json()) #添加header url=‘http://api.nnzhp.cn/api/user/all_stu‘ h = {‘Referer‘:‘http://api.nnzhp.cn/‘,‘User-Agent‘:‘Chore‘}#可以添加多個header,用,分開 res = requests.get(url,headers=h) print(res.json()) #上傳文件 url = ‘http://api.nnzhp.cn/api/file/file_upload‘ f = open(r‘C:\Users\bjniuhanyang\Desktop\ad.cpm.schedulingInfo.v1.json‘,‘rb‘) r = requests.post(url,files={‘file‘:f}) print(r.json()) #下載文件 url= ‘http://www.besttest.cn/data/upload/201710/f_36b1c59ecf3b8ff5b0acaf2ea42bafe0.jpg‘ r = requests.get(url) print(r.status_code) #獲取請求的狀態碼 print(r.content) #獲取返回結果--二進制格式的 fw = open(r‘bt.jpg‘,‘wb‘) fw.write(r.content) fw.close() #保存網頁 url = ‘http://www.nnzhp.cn/archives/630‘ r = requests.get(url) f = open(‘nnzhp.html‘,‘wb‘) f.write(r.content) f.close()
python網絡編程----requests模塊