python urllib2 实现HTTP 的GET POST 请求
python 一般可以用模块urllib2 来实现GET POST的http 请求
GET 请求
-
import os,sys
- import os,sys
- import urllib2
- http_str = 'http://127.0.0.1:12345/apps/' + serviceLine + '/clusters/' + clusterName
- url = http_str + '/machine_info'
- req = urllib2.Request(url) # url 转换成发起get 请求的url
- result = urllib2.urlopen(req) # 发起GET http服务
- res = result.read() #把结果通过.read()函数读取出来
- slave_info = json.loads(res) #把返回结果(string) 转换成json,方便处理,
- print slave_info['content']['slave'] # 打印json 串的dict 信息
POST 请求 【post 跟get 去请求的区别是部分参数写在程序里面,不是在http 请求里面】
- import os,sys
- import os,sys
- import urllib2
- http_str = 'http://127.0.0.1:12345/apps/' + serviceLine + '/clusters/' + clusterName
- url1 = http_str + '/ops/rpm_update' # url 部分
- params1 = {"app_rpm_id":"-1","rpm_xxx":rpmxxxxx} #参数部分
- params = json.dumps(params1) # http 服务器要求传入的params 必须是json 对象,所以这里需要转换一下;如果http 服务器没有要求,就可以不转换
- response = urllib.urlopen(url1,params) #发送POST 请求 print response # 因为http 服务器已经规定好返回的结果就是一个json 对象,所以不用再转换成json;
- print response.read() # 把结果数据通过read()读出来;如果http返回的不是json 对象,还需要转换成json 对象
原文地址:http://blog.51cto.com/lookingdream/2157158
时间: 2024-11-03 15:15:57