python flask 上传下载 api_python – 使用Flask上传和下载文件
PythonAnywhere dev这里.这是一个关于Flask和Web开发的一个很好的问题,而不是我们的系统特定的,所以我会尝试给出一个没有任何特定的通用答案:-)
有一些事情我需要知道,给出一个明确的答案你的问题,所以我首先列出我所做的假设 – 如果我错了任何一个,给我一个评论我会适当地更新答案.
>我假设你上传的文件不是很大,可以适应一个合理的内存 – 比如说,小于一兆字节.
>我假设你已经编写来从文本文件中生成CSV的程序是Python,而且它(或者更有可能是容易地改变为具有)一个需要一个字符串的函数包含文本文件的内容,并返回需要写入CSV的内容.
如果两者都是这样,那么构建Flask应用程序的最佳方法就是处理Flask内的所有内容.代码示例值得一千字,所以这里是一个简单的一个,我放在一起,允许用户上传一个文本文件,通过一个称为transform的函数(这是你的转换程序中的函数将插入我的位置)在整个文件中替换=,并将结果发送回浏览器. There’s a live version of this app on PythonAnywhere here.
from flask import Flask, make_response, request
app = Flask(__name__)
def transform(text_file_contents):
return text_file_contents.replace("=", ",")
@app.route('/')
def form():
return """
Transform a file demo
"""
@app.route('/transform', methods=["POST"])
def transform_view():
file = request.files['data_file']
if not file:
return "No file"
file_contents = file.stream.read().decode("utf-8")
result = transform(file_contents)
response = make_response(result)
response.headers["Content-Disposition"] = "attachment; filename=result.csv"
return response
关于你的其他问题:
>模板:我没有使用这个例子的模板,因为我想把它全部适合一个代码.如果我正在做的正确,那么我将把窗体视图生成的东西放入一个模板中,但这就是所有.
>你可以通过写入文件来做到这一点 – 是的,可以使用我使用stream属性的文件对象上的save(filename)方法来保存上传的文件.但是如果您的文件很小(根据我上面的假设),那么在内存中处理它们可能更有意义,就像上面的代码一样.
我希望所有的帮助,如果你有任何问题,那么只需留下评论.
python flask 上传下载 api_python – 使用Flask上传和下载文件相关推荐
- python做的数据图表怎么在flask中显示_Flask使用Pyecharts在单个页面展示多个图表的方法...
在Flask页面展示echarts,主要有两种方法: 方法1.原生echarts方法 自己在前端引入echarts.js文件.自己创建div.自己初始化echarts对象.自己从官网复制并且配置图表. ...
- 【Python搞搞轻量Blog】第一发 Flask入门
我发现很多小伙伴一直想着有自己的一个博客,而且还想自己写一个. 你们都这么爱折腾,我就给你们搞一个轻量级级别的Blog. 准备 我们要用Python来写一套轻量级的博客,那么必须要有Python方面的 ...
- 从表单中提交图片到mysql_如何在Python框架Flas中将图像文件从表单上传到数据库...
我正在尝试从一个表单上传一个图片到我正在工作的一个实践电子商务网站的Flask数据库中.我使用flask上传来处理文件上传,因为它看起来比其他上传文件的方式容易.我收到以下错误"NameEr ...
- python定制框架知识点_python框架中flask知识点总结
有很久没有更新我的博客了,在学习flask去了,别人都说flask不难,其实现在我也这么觉得,但是在刚接触的时候还是有点吃力的. 在学习的过程中查阅了不少,也了解了许多,今天想做个总结...以免觉得学 ...
- python云服务器搭建教程_Python利用flask搭建一个共享服务器的步骤
这篇文章我们来讲一下在网站建设中,Python利用flask搭建一个共享服务器的步骤.本文对大家进行网站开发设计工作或者学习都有一定帮助,下面让我们进入正文. 零.概述 我利用flask搭建了一个简易 ...
- ftp 追加远程文件_ftp上传,完成ftp定时上传、下载只需3步
FTP[File Transfer Protocol]中文译为文件传输协议,是Internet上的另一项主要服务,这项服务让使用者能通过Internet来传输各式各样的文件.FTP上传是与WEB上传相 ...
- uniapp 定时执行_ftp上传,完成ftp定时上传、下载只需3步
FTP[File Transfer Protocol]中文译为文件传输协议,是Internet上的另一项主要服务,这项服务让使用者能通过Internet来传输各式各样的文件.FTP上传是与WEB上传相 ...
- JFrog Artifactory 7.27 上传应用到私服和从maven私服下载制品
文章目录 一.上传微服务应用 1. 生成配置 2. 拷贝配置 3. 执行上传 4. 验证 5. 自定义配置 二.下载制品 2.1. 获取密文密码 2.2. 执行下载 一.上传微服务应用 1. 生成配置 ...
- Python实现GCS bucket断点续传功能,分块上传文件
Python实现GCS bucket断点续传功能,分块上传文件 环境:Python 3.6 我有一个关于使用断点续传到Google Cloud Storage的上传速度的问题.我已经编写了一个Pyth ...
最新文章
- redis(11)--AOF持久化
- libuv 中文编程指南(四)网络
- 统计iOS项目代码行数
- 知识即战斗力!数学家华罗庚投入特殊抗战,一夜译破日军密码
- 练习-自定义分页功能的实现
- DWG TrueView 2010 下载地址
- OpenShift 4 Hands-on Lab (11) 用户身份认证和资源访问限制
- python imagedraw line_修复PIL.ImageDraw.Draw.宽线条线条线条
- miui12怎么自定义开机动画_MIUI12一天的体验,像换新机一样,感知超强!
- Net系列框架-Dapper+AutoFac 基于接口
- 贝叶斯网络结构学习之MCMC算法(基于FullBNT-1.0.4的MATLAB实现)
- 计算机五笔是什么时候学的吗,现在还有人学五笔么
- 听说昨天朋友圈炸开了锅???
- 每日一结(10.26)
- sql grop by having order by 的用法
- 微信叫车系统|顺风车小程序|在线选座拼车订票APP【开发实战】
- 深信服VMP 内存分配一点看法
- 根轨迹图、Bode图、Nyquist图的Matlab仿真
- 【mcuclub】称重-HX711
- HTML 常用转义字符
热门文章
- Spring 3.2矩阵变量是什么? –第2部分:代码
- Spring Data JPA教程第一部分:配置
- JDK 8的Calendar.Builder
- Google Guava –期货
- JMX:一些入门说明
- JBoss Portal上的“ Hello World” portlet
- GWT EJB3 Maven JBoss 5.1集成教程
- jdbc操作mysql数据库_JDBC操作MySQL数据库(一)
- 前端 JS 如何在一个页面中局部加载其它页面的数据
- php 获取请求设备,php – 如何获取设备令牌