python urllib的用法实例
2016-04-26 00:00
621 查看
import urllib2 import urllib import json def _post_json_by_urllib(url,jsondata): request=urllib2.Request(url,jsondata) request.add_header("Content-type","application/json") request.get_method=lambda :"POST" request=urllib2.urlopen(request) return request.read() class Api(object): def __init__(self,url): self.url=url def get(self,data={}):#get请求 assert type(data)==dict data=dict([((key if type(key)!=unicode else key.encode("utf-8")) ,\ (v if type(v)!=unicode else v.encode("utf-8")) ) for key,v in data.items()]) querystring=urllib.urlencode(data) if "?" not in self.url: url=self.url+"?"+querystring else: url=self.url+'&'+querystring try: fd=urllib2.urlopen(url) data=fd.read() return (True,data) except Exception as e : return (False,str(e)) def post(self,data={},is_json=False):#post请求 assert type(data)==dict data=dict([((key if type(key)!=unicode else key.encode("utf-8")) ,\ (v if type(v)!=unicode else v.encode("utf-8")) ) for key,v in data.items()]) if is_json==False: data=urllib.urlencode(data) try: #req = urllib2.Request(self.url,data) data=urllib2.urlopen(self.url,data,timeout=3) return (True,data.read()) except Exception as e : return (False,str(e)) else: try: data=json.dumps(data) result=_post_json_by_urllib(self.url,data) return (True,result) except Exception as e : return (False,str(e))
相关文章推荐
- 学习python第一周
- Python自动化运维--系统基础信息模块
- pythonchallenge初试
- 使用Python脚本强化LLDB调试器
- 自动化 测试框架部署(python3+selenium2)
- Python编程-字符串的编码转换、存储及乱码问题
- 利用python,基于SVM实现文本分类
- Python 进阶 —— x = x+1 vs x += 1
- Python学习-机器学习实战-ch06 支持向量机
- Python collections.defaultdict()与dict的使用和区别
- 【Grades Crawler】利用python编写爬虫 爬取西电教务处成绩并本地保存
- 在Python中使用机器学习(1)—安装四库
- python中实现有序字典
- 【LeetCode-343】Integer Break
- python编码问题
- Python学习笔记12
- Python分割list
- Python Logging模块-Logger,Handler,Formatter
- 用python将博客园的文章爬取到本地
- 聚类(一)pyspark 实现特征的ID化