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


Posted in Python onJanuary 03, 2019

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文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python re模块介绍
Nov 30 Python
Python通过PIL获取图片主要颜色并和颜色库进行对比的方法
Mar 19 Python
Python检测QQ在线状态的方法
May 09 Python
python实现多线程抓取知乎用户
Dec 12 Python
python+pyqt实现12306图片验证效果
Oct 25 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
Dec 20 Python
Python字符串的全排列算法实例详解
Jan 07 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
Jun 17 Python
python脚本调用iftop 统计业务应用流量的思路详解
Oct 11 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
Jan 08 Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
Jul 31 Python
解决python便携版无法直接运行py文件的问题
Sep 01 Python
Python中shapefile转换geojson的示例
Jan 03 #Python
Python关于excel和shp的使用在matplotlib
Jan 03 #Python
Python使用folium excel绘制point
Jan 03 #Python
Python获取航线信息并且制作成图的讲解
Jan 03 #Python
Python中GeoJson和bokeh-1的使用讲解
Jan 03 #Python
Python图像滤波处理操作示例【基于ImageFilter类】
Jan 03 #Python
python 调用有道api接口的方法
Jan 03 #Python
You might like
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
2015/10/22 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
Yii2压缩PHP中模板代码的输出问题
2018/08/28 PHP
Javascript - HTML的request类
2006/07/15 Javascript
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
深入学习jQuery Validate表单验证
2016/01/18 Javascript
深入理解JQuery中的事件与动画
2016/05/18 Javascript
AngularJS入门教程之控制器详解
2016/07/27 Javascript
JS正则替换掉小括号及内容的方法
2016/11/29 Javascript
详解从Node.js的child_process模块来学习父子进程之间的通信
2017/03/27 Javascript
mac下的nodejs环境安装的步骤
2017/05/24 NodeJs
浅谈原型对象的常用开发模式
2017/07/22 Javascript
javascript 日期相减-在线教程(附代码)
2017/08/17 Javascript
JS实现运动缓冲效果的封装函数示例
2018/02/18 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
JS实现的点击按钮图片上下滚动效果示例
2019/01/28 Javascript
JavaScript数据结构与算法之基本排序算法定义与效率比较【冒泡、选择、插入排序】
2019/02/21 Javascript
详解easyui 切换主题皮肤
2019/04/04 Javascript
一次让你了解全部JavaScript的作用域
2019/06/24 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
浅谈JavaScript中this的指向问题
2020/07/28 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
Python计算一个文件里字数的方法
2015/06/15 Python
python在html中插入简单的代码并加上时间戳的方法
2018/10/16 Python
对python中UDP,socket的使用详解
2019/08/22 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
python opencv肤色检测的实现示例
2020/12/21 Python
实习单位鉴定评语
2014/04/26 职场文书
公安机关起诉意见书
2015/05/20 职场文书
2016八一建军节慰问信
2015/11/30 职场文书
企业文化学习心得体会
2016/01/21 职场文书
资产移交协议书
2016/03/24 职场文书
Axios取消重复请求的方法实例详解
2021/06/15 Javascript
基于Pygame实现简单的贪吃蛇游戏
2021/12/06 Python
Java中生成微信小程序太阳码的实现方案
2022/06/01 Java/Android