码迷,mamicode.com
首页 > 编程语言 > 详细

Python httpsqs封装类

时间:2014-07-07 11:15:30      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   os   cti   

‘‘‘
httpsqs?????
@author xiaopeng

a = HttpsqsClient(‘192.168.0.218‘,‘1218‘,‘httpsqsmmall.com‘)
print a.put(‘logtest‘,‘sdfsfsf‘)
print a.get(‘logtest‘)
‘‘‘

import urllib,urllib2,json

class HttpsqsClient(object):
    def __init__(self,host= 127.0.0.1,port=1218,auth = ‘‘, charset = utf-8):
        self.httpsqs_url = http:// + host + : + port + /?
        self.httpsqs_auth = auth
        self.httpsqs_charset = charset
    
    
    def __http_get(self,params):
        ‘‘‘
        http get??
        params = {"wd":"a","b":"2"}
        ‘‘‘        
        params[auth] = self.httpsqs_auth
        params[charset] = self.httpsqs_charset
        try:
            url_params = urllib.urlencode(params)
            final_url = self.httpsqs_url + url_params
            page = urllib2.urlopen(final_url,timeout=3).read()
            return page
        except urllib2.HTTPError, e:
            print "Error Code:", e.code  
        except urllib2.URLError, e:  
            print "Error Reason:", e.reason
    
    def __http_post(self,params,post_data):
        """
        http post??
        @param params: params = {"wd":"a","b":"2"}
        @param post_data: json or string
        @type post_data: string
        @return:string
        """
        params[auth] = self.httpsqs_auth
        params[charset] = self.httpsqs_charset 
               
        url_params = urllib.urlencode(params)
        final_url = self.httpsqs_url + url_params
        post_data = post_data.encode(utf8)
        try:
            req = urllib2.Request(final_url, post_data)
            page = urllib2.urlopen(req,timeout=3).read()
            return page
        except urllib2.HTTPError, e:  
            print "Error Code:", e.code  
        except urllib2.URLError, e:  
            print "Error Reason:", e.reason
    
    
    def put(self,queue_name,queue_data):
        params = {opt:put,name:queue_name}
        r = self.__http_post(params,queue_data)
        if r == HTTPSQS_PUT_OK:
            return True
        return False
        
        
    def get(self,queue_name):
        params = {opt:get,name:queue_name}
        r = self.__http_get(params)
        if r == HTTPSQS_GET_END:
            return None
        return r

    def status(self,queue_name):
        params = {opt:status,name:queue_name}
        return self.__http_get(params)

    def status_json(self,queue_name):
        params = {opt:status_json,name:queue_name}
        return self.__http_get(params)

    def reset(self,queue_name):
        params = {opt:reset,name:queue_name}
        return self.__http_get(params)

    def maxqueue(self,queue_name,num):
        params = {opt:maxqueue,name:queue_name,num:str(num)}
        return self.__http_get(params)

    def synctime(self,queue_name,num):
        params = {opt:synctime,name:queue_name,num:str(num)}
        return self.__http_get(params)

 

Python httpsqs封装类,布布扣,bubuko.com

Python httpsqs封装类

标签:style   blog   http   color   os   cti   

原文地址:http://www.cnblogs.com/seans/p/3820444.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!