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

作者:坏蛋是我 时间:2022-12-05 19:12:39 

本文实例讲述了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程序设计有所帮助。

来源:http://blog.csdn.net/henni_719/article/details/74451955

标签:Python,ThreadingTCPServer,多线程
0
投稿

猜你喜欢

  • 利用Python实现热力图的绘制

    2021-11-07 12:02:47
  • 浅谈Pandas Series 和 Numpy array中的相同点

    2022-06-11 15:20:17
  • python数据处理67个pandas函数总结看完就用

    2023-02-24 10:19:32
  • Django实现简单网页弹出警告代码

    2022-12-31 06:56:16
  • Django权限控制的使用

    2023-12-27 01:50:57
  • python实现的分层随机抽样案例

    2022-06-07 16:10:42
  • JS阻止事件冒泡的方法详解

    2023-09-10 08:57:36
  • Window.Open详解

    2008-06-08 13:43:00
  • SqlServer异常处理常用步骤

    2024-01-26 01:56:32
  • MYSQL5.7.9开启慢查询日志的技巧

    2024-01-18 08:47:52
  • python下实现二叉堆以及堆排序的示例

    2023-02-19 16:44:23
  • Python实现线程状态监测简单示例

    2023-12-07 20:31:25
  • Django中针对基于类的视图添加csrf_exempt实例代码

    2021-05-22 03:08:19
  • Oracle性能究极优化

    2010-07-30 13:02:00
  • Python实现简单生成验证码功能【基于random模块】

    2022-12-10 18:19:58
  • Python中变量的作用域的具体使用

    2022-11-01 00:20:04
  • Python实现http接口自动化测试的示例代码

    2023-05-01 07:14:45
  • Python堆排序原理与实现方法详解

    2021-02-22 15:07:31
  • Python模块_PyLibTiff读取tif文件的实例

    2023-04-11 03:22:06
  • Python制作一个随机抽奖小工具的实现

    2022-10-22 03:53:29
  • asp之家 网络编程 m.aspxhome.com