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之永远强大的函数
Sep 14 Python
Python中取整的几种方法小结
Jan 06 Python
Python进阶-函数默认参数(详解)
May 18 Python
Python实现的中国剩余定理算法示例
Aug 05 Python
Python实现学校管理系统
Jan 11 Python
使用Pandas对数据进行筛选和排序的实现
Jul 29 Python
如何利用python给图片添加半透明水印
Sep 06 Python
Python enumerate函数遍历数据对象组合过程解析
Dec 11 Python
django修改models重建数据库的操作
Mar 31 Python
python爬虫爬取某网站视频的示例代码
Feb 20 Python
python 对xml解析的示例
Feb 27 Python
python自动化调用百度api解决验证码
Apr 13 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
MySQL修改密码方法总结
2008/03/25 PHP
PHP 远程关机实现代码
2009/11/10 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
php中的单引号、双引号和转义字符详解
2017/02/16 PHP
一次因composer错误使用引发的问题与解决
2019/03/06 PHP
基于JQuery 滑动与动画的说明介绍
2013/04/18 Javascript
探讨javascript是不是面向对象的语言
2013/11/21 Javascript
jQuery的选择器中的通配符使用介绍
2014/03/20 Javascript
一个检测表单数据的JavaScript实例
2014/10/31 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
2016/03/31 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
2016/08/16 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
详解angular笔记路由之angular-router
2017/09/12 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
2018/08/17 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
nodejs基础之常用工具模块util用法分析
2018/12/26 NodeJs
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
toString.call()通用的判断数据类型方法示例
2020/08/28 Javascript
解决elementui表格操作列自适应列宽
2020/12/28 Javascript
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
Python科学计算之Pandas详解
2017/01/15 Python
python实现给微信公众号发送消息的方法
2017/06/30 Python
详解用TensorFlow实现逻辑回归算法
2018/05/02 Python
浅谈python中get pass用法
2019/03/19 Python
使用Keras实现简单线性回归模型操作
2020/06/12 Python
美国领先的奢侈美容零售商:Bluemercury
2017/07/26 全球购物
日本小田急百货官网:Odakyu
2018/07/19 全球购物
后勤人员自我评价怎么写
2013/09/19 职场文书
中学生获奖感言
2014/02/04 职场文书
微笑服务标语
2014/06/24 职场文书
大学课外活动总结
2014/07/09 职场文书
公证委托书格式
2014/09/13 职场文书
2014年反腐倡廉工作总结
2014/12/05 职场文书