python 搭建简单的http server,可直接post文件的实例

 更新时间:2019年01月03日 11:46:35   作者:Ghost丶   我要评论

今天小编就为大家分享一篇python 搭建简单的http server,可直接post文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

server:

#coding=utf-8
from BaseHTTPServer import BaseHTTPRequestHandler
import cgi
class PostHandler(BaseHTTPRequestHandler):
 def do_POST(self):
  form = cgi.FieldStorage(
   fp=self.rfile,
   headers=self.headers,
   environ={'REQUEST_METHOD':'POST',
      'CONTENT_TYPE':self.headers['Content-Type'],
      }
  )
  self.send_response(200)
  self.end_headers()
  self.wfile.write('Client: %sn ' % str(self.client_address) )
  self.wfile.write('User-agent: %sn' % str(self.headers['user-agent']))
  self.wfile.write('Path: %sn'%self.path)
  self.wfile.write('Form data:n')
  for field in form.keys():
   field_item = form[field]
   filename = field_item.filename
   filevalue = field_item.value
   filesize = len(filevalue)#文件大小(字节)
   #print len(filevalue)
	 #print (filename)
   with open(filename.decode('utf-8'),'wb') as f:
    f.write(filevalue)
  return
 
def StartServer():
 from BaseHTTPServer import HTTPServer
 sever = HTTPServer(("",8080),PostHandler)
 sever.serve_forever()
 
 
 
 
if __name__=='__main__':
 StartServer()

client:

#coding=utf-8
import requests
url = "http://172.16.1.101:8080"
path = "/home/ly/ly.exe"
print path
files = {'file': open(path, 'rb')}
r = requests.post(url, files=files)
print (r.url)
print (r.text)

以上这篇python 搭建简单的http server,可直接post文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 浅谈tensorflow1.0 池化层(pooling)和全连接层(dense)

    浅谈tensorflow1.0 池化层(pooling)和全连接层(dense)

    本篇文章主要介绍了浅谈tensorflow1.0 池化层(pooling)和全连接层(dense),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • java中两个byte数组实现合并的示例

    java中两个byte数组实现合并的示例

    今天小编就为大家分享一篇java中两个byte数组实现合并的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • python中的json总结

    python中的json总结

    JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。本文重点给大家介绍python中的json,感兴趣的朋友跟随小编一起看看吧
    2018-10-10
  • python3简单实现微信爬虫

    python3简单实现微信爬虫

    我们可以通过python 来实现这样一个简单的爬虫功能,把我们想要的代码爬取到本地。下面就看看如何使用python来实现这样一个功能。
    2015-04-04
  • Eclipse + Python 的安装与配置流程

    Eclipse + Python 的安装与配置流程

    Eclipse的安装是很容易的。Eclipse是基于java的一个应用程序,因此需要一个java的运行环境(JRE)才行。(我这里主要介绍windows下的安装)
    2013-03-03
  • python实现socket端口重定向示例

    python实现socket端口重定向示例

    这篇文章主要介绍了python实现的socket端口重定向示例,实现功能是在端口12345开启文件共享,此时我也想通过8000端口同时访问此共享
    2014-02-02
  • Python随机生成一个6位的验证码代码分享

    Python随机生成一个6位的验证码代码分享

    这篇文章主要介绍了Python随机生成一个6位的验证码代码分享,本文直接给出代码实例,需要的朋友可以参考下
    2015-03-03
  • Python使用正则表达式抓取网页图片的方法示例

    Python使用正则表达式抓取网页图片的方法示例

    这篇文章主要介绍了Python使用正则表达式抓取网页图片的方法,结合具体实例形式分析了Python网页文件的读取及正则匹配相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • ubuntu16.04制作vim和python3的开发环境

    ubuntu16.04制作vim和python3的开发环境

    本文给大家介绍的是在ubuntu系统下制作python3开发环境的详细步骤,非常的实用,有需要的小伙伴可以参考下
    2018-09-09
  • Python操作RabbitMQ服务器实现消息队列的路由功能

    Python操作RabbitMQ服务器实现消息队列的路由功能

    RabbitMQ是一个消息队列服务器,这里我们针对Python+Pika+RabbitMQ的服务器端环境,来看一下如何使用Python操作RabbitMQ服务器实现消息队列的路由功能
    2016-06-06

最新评论