python做http请求可以用到三种工具类 httplib ,urllib2,requests,其中requests最为简单
代码如下:
# -*- coding: UTF-8 -*- import httplib import urllib import urllib2 import requests class HttpUtil: #使用 httplib def get(self,ip,url): conn = httplib.HTTPConnection(ip) conn.request('GET',url) result = conn.getresponse() resultContent = result.read() conn.close() return resultContent # 使用urllib2 def urlGet(self, url): req = urllib2.Request(url) res_data = urllib2.urlopen(req) res = res_data.read() return res def requestGet(self, url,params): res = requests.get(url, params) return res.text def post(self,ip,url,params): headers = {'Content-type': 'application/x-www-form-urlencoded', 'Accept': 'text/plain'} conn = httplib.HTTPConnection(ip) test_data_urlencode = urllib.urlencode(params) conn.request('POST', url, test_data_urlencode,headers) result = conn.getresponse() resultContent = result.read() conn.close() return resultContent def urlPost(self,url,params): test_data_urlencode = urllib.urlencode(params) req = urllib2.Request(url, test_data_urlencode) res_data = urllib2.urlopen(req) res = res_data.read() return res def requestPost(self,url,params): res = requests.get(url, params) return res.text if __name__ == "__main__": url = "http://127.0.0.1:81/hello/add" http = HttpUtil() #get的三种方法 res = http.get("127.0.0.1:81", "http://127.0.0.1:81/hello/add?name=aaa") print res res = http.urlGet("http://127.0.0.1:81/hello/add?name=bbb") print res params = {'name': 'ccc'} res = http.requestGet("http://127.0.0.1:81/hello/add",params) print res #post三种方法 params = {'name': 'ddd'} res = http.urlPost('http://127.0.0.1:81/hello/add',params); print res params = {'name': 'eee'} res = http.post('127.0.0.1:81',url,params) print res params = {'name': 'fff'} res = http.requestPost(url, params) print res
执行的结果为:
{"error_info":"数据添加成功","error_no":0}
{"error_info":"数据添加成功","error_no":0}
{"error_info":"数据添加成功","error_no":0}
{"error_info":"数据添加成功","error_no":0}
{"error_info":"数据添加成功","error_no":0}
{"error_info":"数据添加成功","error_no":0}
比较简单粗暴,http接口就是本地用java写的一个insert数据到mysql表中。
初学,总结一下