Python httpsqs封装类
'''
httpsqs队列封装
@author xp_go@qq.com 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='',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封装类的更多相关文章
- selenium识别登录验证码---基于python实现
本文主要是通过PIL+pytesseract+Tesseract-OCR实现验证码的识别 其中PIL为Python Imaging Library,已经是Python平台事实上的图像处理标准库了.PI ...
- selenium+Python3.5获取验证码
其中PIL为Python Imaging Library,已经是Python平台事实上的图像处理标准库了.PIL功能非常强大,但API却非常简单易用. PIL第三方库安装 pip install PI ...
- Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐
# Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐 from binarytree import build import random # https://www.cn ...
- python中matplotlib绘图封装类之折线图、条状图、圆饼图
DrawHelper.py封装类源码: import matplotlib import matplotlib.pyplot as plt import numpy as np class DrawH ...
- python接口自动化测试 - openpyxl封装类
前言 为了更好的让openpyxl在工作中使用,将openpyxl的常用操作封装起来,这样不仅复用性高,而且阅读性好 直接上代码 #!/usr/bin/env python # -*- coding: ...
- python基础类知识~pymysql封装类
一简介:咱们来介绍下 DBA常用的几个类 二 具体代码 #!/usr/bin/python3import pymysqlimport sysclass DBHelper: def __init__(s ...
- Python使用笔记27--mysql操作封装类
1.面向过程 1 import pymysql 2 3 #面向过程 4 mysql_info = {'host':'127.0.0.1', 5 'port':3306, 6 'user':'root' ...
- python grammar、C/C++ Python Parsing Engine
catalog . Python语言简介 . Python模块 . 嵌入式Python解析引擎: C++调用Python . Python 调用 C (base) . 扩展Python语法解析器功能: ...
- 转:python webdriver API 之 验证码问题
对于 web 应用来说,大部分的系统在用户登录时都要求用户输入验证码,验证码的类型的很多,有字母数字的,有汉字的,甚至还要用户输入一条算术题的答案的,对于系统来说使用验证码可以有效果的防止采用机器猜测 ...
随机推荐
- Hadoop-2.2.0中文文档——MapReduce 下一代 -——集群配置
目的 这份文档描写叙述了怎样安装.配置和管理从几个节点到有数千个节点的Hadoop集群. 玩的话,你可能想先在单机上安装.(看单节点配置). 准备 从Apache镜像上下载一个Hadoop的稳定版本号 ...
- 在Java项目中整合Scala
Scala是一个运行在Java JVM上的面向对象的语言.它支持函数编程,在语法上比Java更加灵活,同时通过Akka库,Scala支持强大的基于Actor的多线程编程.具有这些优势,使得我最近很想在 ...
- css 行内元素和块级元素
1. 块级元素默认在新行开始,如常见的div和p标签,行内元素默认在同行开始显示,如a,span标签 2.块级元素一般用于做容器,可容纳行内和块级元素,可设置width和height,行内元素只能容纳 ...
- android91 代码注册广播接收者
Activity: package com.itheima.register; import android.os.Bundle; import android.app.Activity; impor ...
- JavaScript实现回到顶部
HTML页面使用一个a标签,href内填写JavaScript:;以阻止默认行为,在学习实例的时候添加一个大的div来充实页面. demo: <a href="javascript:; ...
- cglib源码分析(一): 缓存和KEY
cglib是一个java 字节码的生成工具,它是对asm的进一步封装,提供了一系列class generator.研究cglib主要是因为它也提供了动态代理功能,这点和jdk的动态代理类似. 一. C ...
- arcgis 获得路径和环境变量信息
import arcpy import sysimport osimport string reload(sys) sys.setdefaultencoding("utf8")sc ...
- uboot源码解析
实例:1.3.4版本at91sam系列 GPIO部分: 一.初始化: include\asm-arm\arch-at91sam9\gpio.h 1.同一引脚的复用设置 2.输入输出初始化寄存器 3.得 ...
- CSS3 动画效果合集
@charset "UTF-8"; /*! * animate.css -http://daneden.me/animate * Version - 3.5.1 * License ...
- Optimal Logging
by Anthony Vallone How long does it take to find the root cause of a failure in your system? Five mi ...