python封裝的GET&POST請求
#coding=utf-8
import os
import urllib
import httplib
import requests
import jsondef get_page_content(baseUrl, path, params, headers, type = 'get'): try: httpClient = httplib.HTTPConnection(baseUrl, 80, timeout=30) if type == 'get': httpClient.request('GET', path) response = httpClient.getresponse() print response.status print response.reason print response.read() elif type == 'post': params = urllib.urlencode(params) httpClient.request("POST", path, params, headers) response = httpClient.getresponse() print response.status print response.reason print response.read() print response.getheaders() #獲取頭信息 else: print 'unsupport' except Exception, e: print Exception, e def get_page_content_by_requests(url, payload, timeout, headers, type = 'get'): try: if type == 'get': response = requests.get(url, params=payload, timeout=timeout) response.encoding = 'gbk' #設定編碼 print response.status_code #返回狀態 print response.text #返回字符結果 print response.content #返回二進制響應內容 print response.json() #獲取Json響應內容 print response.raw #獲取原始響應內容 print response.raise_for_status() #非200請況下拋出異常 print response.headers['Content-Type'] #獲取響應頭某個字段 elif type == 'post': response = requests.post(url, data = json.dumps(payload), headers = headers, timeout=timeout) response.encoding = 'gbk' #設定編碼 print response.text else: print 'unsupport' except Exception, e: print Exception, e </pre>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!