Python基于ThreadingTCPServer创建多线程代理的方法示例


Posted in Python onJanuary 11, 2018

本文实例讲述了Python基于ThreadingTCPServer创建多线程代理的方法。分享给大家供大家参考,具体如下:

#coding=utf8
from BaseHTTPServer import BaseHTTPRequestHandler
from SocketServer import ThreadingTCPServer
import gzip
from StringIO import StringIO
import logging
logging.basicConfig(level=logging.DEBUG,
        format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
        datefmt='%a, %d %b %Y %H:%M:%S',
        filename='proxy.log',
        filemode='w')
class proxyHandler(BaseHTTPRequestHandler):
  def do_POST(self):
    while True:
      try:
        path = self.path
        if path.split("/")[-1] =="statistics":
          #获取post提交的数据
          datas =gzip.GzipFile(fileobj=StringIO(self.rfile.read())).read()
          self.wfile.write(datas)
          logging.debug(datas)
          print datas
      except Exception,e:
        logging.error(e)
      finally:
        self.finish()
  def do_CONNECT(self):
    pass
  def do_GET(self):
    pass
def test():
  host='127.0.0.1'
  port=8888
  try:
    server = ThreadingTCPServer((host, port), proxyHandler)
    print 'Welcome to the Server HTTP On %s Port %d...' %(host,port)
    server.serve_forever()
  except KeyboardInterrupt,e:
    logging.error(e)
    #print '^C received, shutting down server'
    server.socket.close()
if __name__ == '__main__':
  test()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现人脸识别经典算法(一) 特征脸法
Mar 13 Python
python中的文件打开与关闭操作命令介绍
Apr 26 Python
python实现自主查询实时天气
Jun 22 Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
Oct 26 Python
python 同时运行多个程序的实例
Jan 07 Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
Jan 29 Python
python 控制Asterisk AMI接口外呼电话的例子
Aug 08 Python
Python3搭建http服务器的实现代码
Feb 11 Python
python3+opencv生成不规则黑白mask实例
Feb 19 Python
django-csrf使用和禁用方式
Mar 13 Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
Jun 23 Python
python“静态”变量、实例变量与本地变量的声明示例
Nov 13 Python
python实现员工管理系统
Jan 11 #Python
Python使用base64模块进行二进制数据编码详解
Jan 11 #Python
Python实现备份MySQL数据库的方法示例
Jan 11 #Python
教你用Python写安卓游戏外挂
Jan 11 #Python
python实现学生管理系统
Jan 11 #Python
linecache模块加载和缓存文件内容详解
Jan 11 #Python
Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
Jan 11 #Python
You might like
PHP大批量数据操作时临时调整内存与执行时间的方法
2011/04/20 PHP
codeigniter实现get分页的方法
2015/07/10 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
firefox firebug中文入门教程 脚本之家新年特别版
2010/01/02 Javascript
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
2012/03/16 Javascript
ajax中get和post的说明及使用与区别
2012/12/23 Javascript
JavaScript中的运算符种类及其规则介绍
2013/09/26 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
2014/05/11 Javascript
AngularJS 工作原理详解
2016/08/18 Javascript
BootStrap 动态添加验证项和取消验证项的实现方法
2016/09/28 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
详解vue中引入stylus及报错解决方法
2017/09/22 Javascript
Python素数检测实例分析
2015/06/15 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
Python设计模式之中介模式简单示例
2018/01/09 Python
Python爬虫实现简单的爬取有道翻译功能示例
2018/07/13 Python
Django 实现购物车功能的示例代码
2018/10/08 Python
基于PyQt4和PySide实现输入对话框效果
2019/02/27 Python
Python获取时间范围内日期列表和周列表的函数
2019/08/05 Python
python重要函数eval多种用法解析
2020/01/14 Python
python time()的实例用法
2020/11/03 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
amazeui树节点自动展开折叠面板并选中第一个树节点的实现
2020/08/24 HTML / CSS
.NET概念性的面试题
2012/02/29 面试题
八年级音乐教学反思
2014/01/09 职场文书
三好学生演讲稿范文
2014/04/26 职场文书
艺术教育实施方案
2014/05/03 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
国家领导干部党的群众路线教育实践活动批评与自我批评材料
2014/09/23 职场文书
初中同学会致辞
2015/08/01 职场文书
中学生运动会广播稿
2015/08/19 职场文书
毕业生求职自荐信(2016最新版)
2016/01/28 职场文书
小学体育课教学反思
2016/02/16 职场文书
python使用matplotlib绘制图片时x轴的刻度处理
2021/08/30 Python
CSS link与@import的区别和用法解析
2023/05/07 HTML / CSS