Flask-文件上传

2023-11-05

在Flask中处理文件上传非常简单。 它需要一个enctype属性设置为'multipart/form-data'的HTML表单,将该文件提交到指定URL。 

也可以配置上传文件路径和指定上传文件大小。

 

实例:upload.html文件中包含一个file和一个提交按钮。

执行action为upload函数,方法为post,同时,需要一个 enctype = "multipart/form-data"属性。

 

 <form action = "http://localhost:5000/upload" method = "POST"
         enctype = "multipart/form-data">
         <input type = "file" name = "file" />
         <input type = "submit" value="提交"/>
      </form>

点击提交按钮后,upload_file函数开始处理,从request.files中获取文件, 通过save函数,将文件保存至服务器上。

@app.route('/upload', methods=['GET', 'POST'])
def upload_file():
    if request.method == 'POST':
        f = request.files['file']
        print(request.files)
        f.save(secure_filename(f.filename))
        return 'file uploaded successfully'
    else:
        return render_template('upload.html')

如通过浏览器上传一个1.txt文件,文件被保存至项目所在目录。

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flask-文件上传 的相关文章

  • 如何使用 cython 编译扩展?

    我正在尝试从示例页面编译一个简单的 cython 扩展here http docs cython org src userguide tutorial html在我安装了 Python 2 6 64 位版本的 Windows 7 64 位计
  • 在 Pandas 中按日期获取有效合约

    我在检测 pandas DataFrame 中的活动合约方面遇到了一些困难 假设每一行都是一个协商 对于每一行 我有两列 initial date 和 end date 我想知道的是按日期划分的活跃合约数量 到目前为止我做了一个非常低效的方
  • 在 Python 中使用 Selenium 处理“接受 Cookie”弹出窗口

    我一直在尝试用硒抓取这个房地产网站的一些信息 但是 当我访问该网站时 我需要接受 cookie 才能继续 这仅在机器人访问网站时发生 而不是在我手动执行时发生 当我尝试通过 xpath 或 id 查找相应的元素时 正如我在手动检查页面时找到
  • 如何在Python中循环并存储自变量中的值

    我对 python 很陌生 所以这听起来可能很愚蠢 我进行了搜索 但没有找到解决方案 我在 python 中有一个名为 ExcRng 的函数 我可以对该函数执行什么样的 for 循环 以便将值存储在独立变量中 我不想将它们存储在列表中 而是
  • Python BeautifulSoup XML 解析

    我编写了一个简单的脚本来使用 BeautifulSoup 模块解析 XML 聊天日志 标准 soup prettify 工作正常 只是聊天日志中有很多绒毛 您可以在下面看到我正在使用的脚本代码和一些 XML 输入文件 Code import
  • 优化 Keras 以使用所有可用的 CPU 资源

    好吧 我真的不知道我在说什么 所以请耐心听我说 我正在使用 Theano 后端运行 Keras 以在 MNIST 图像上运行基本的神经网络 目前只是一个教程 过去 我一直使用我的旧 HP 笔记本电脑 因为我有 Windows 和 Ubunt
  • 如果字段值在外部列表中,Django 会注释布尔值

    想象一下我有这个 Django 模型 class Letter models Model name models CharField max length 1 unique True 还有这个列表 vowels a e i o u 我想查询
  • Python Kivy - 在本机网络浏览器中打开 url 的应用程序

    我尝试制作一个简单的应用程序 在单击 Screen One 上的按钮后 在 Kivy 中打开一个网页 我使用了这个主题 Python 在应用程序中直接显示网络浏览器 iframe https stackoverflow com questi
  • 创建一个类似于 Tkinter 的表

    我希望创建类似于 Tkinter 中的表格的东西 但它不一定是这样的 例如 我想创建标题 Name1 Name2 Value 并在每个标题下面有几个空白行 然后 我希望稍后用我计算的值或名称的字符串值填充这些行 因此是标签 对于 Name2
  • Python:计算数据帧列中所有行中特定字符的实例数

    我有一个包含列 toaddress ccaddress body 的数据框 df 我想迭代数据帧的索引 以获取 toaddress 和 ccaddress 字段中电子邮件地址的最小 最大和平均数量 这是通过计算这两列中每个字段中的 和 的实
  • Python 中的 @staticmethod 与 @classmethod

    方法和方法有什么区别装饰的 https peps python org pep 0318 with staticmethod http docs python org library functions html staticmethod和
  • 如何在Python和Selenium中通过标签名称或id获取元素[重复]

    这个问题在这里已经有答案了 我正在尝试使用 Python 和 Selenium 获取输入 但它向我显示错误 我该如何解决这个错误 inputElement send keys getStock getStocklFunc 0 Error i
  • 将 Pandas 列中的列表拆分为单独的列

    这是我在 pandas 数据框中的 特征 列 Feature Cricket 82379 Kabaddi 255 Reality 4751 Cricket 15640 Wildlife 730 LiveTV 13 Football 4129
  • Django 在选择列表更改时创建毫无意义的迁移

    我正在尝试使用可调用创建一个带有选择字段的模型 以便 Django 在选择列表更改时不会创建迁移 如中所述this https stackoverflow com questions 31788450 stop django from cr
  • Matplotlib Scatter - ValueError:RGBA 序列的长度应为 3 或 4

    我正在尝试为我的功能绘制图表 但不断收到此错误 ValueError RGBA sequence should have length 3 or 4 每当我只有 6 种形状时 代码就可以完美运行 但现在我将其增加到 10 种 它就不起作用了
  • 如何通过字符串匹配加速 pandas 行过滤?

    我经常需要过滤 pandas 数据框df by df df col name string value 并且我想加快行选择操作 有没有快速的方法可以做到这一点 例如 In 1 df mul df 3000 2000 3 reset inde
  • Flask WTForms 使用变量自动填充 StringField

    我有一个表格 我想用上一页收到的信息自动填充一些字段 但如果他们想调整它 它需要是可更改的 我正在为我的 SelectField 使用动态创建的列表 但添加 StringField 并不成功 请参阅下面的我的代码 forms py clas
  • 如何禁止 celery 中的 pickle 序列化

    Celery 默认使用 pickle 作为任务的序列化方法 如中所述FAQ http ask github com celery faq html isn t using pickle a security concern 这代表一个安全漏
  • 异步和协程与任务队列

    我一直在阅读有关 python 3 中的 asyncio 模块的内容 以及更广泛地了解 python 中的协程的内容 但我不明白是什么让 asyncio 成为如此出色的工具 我的感觉是 你可以用协程做的所有事情 通过使用基于多处理模块 例如
  • Django South - 将 null=True 字段转换为 null=False 字段

    我的问题是 转变的最佳做法是什么null True场变成null False使用 Django South 的字段 具体来说 我正在与ForeignKey 你应该先写一个数据迁移 http south aeracode org docs t

随机推荐

  • Linux基本操作与命令

    Linux基本操作与命令 一 命令模式下命令的执行 1 命令行提示字符 2 执行命令 3 基础命令的操作 切换用户 su 查看当前主机的完整名称 hostname 临时设置主机名 永久设置主机名 查看当前系统版本信息 查看当前内核版本 重启
  • 《LeetCode力扣练习》第15题 C语言版 (做出来就行,别问我效率。。。。)

    库你急哇 哈集美马戏特 一题二写 三数之和 题解四瞅五瞄六瞧 水平还七上八下九流 十分辣鸡 十推九敲 八种思路 用光七情六欲五感 在这里四覆三翻二挠 一拳爆屏 十赢九输 赢了八千 七百六十五万 打了四个三带二 爽的一批 一天两道 三月打卡
  • css 每个样式单行显示,单行文字溢出和多行文字溢出省略号显示的CSS样式

    JavaScript高级程序设计 读书笔记 3 引用类型 ECMAScript从技术来说是一门面向对象的语言 但不具备传统的面向对象语言所支持的类和接口等基本结构 虽然引用类型与类看起来类似 但是他们并不是相同的概念 引用类型有时也被成为对
  • 用element-plus+vue3+ts实现搜索下拉框

  • 查看kafka是否正常_K8S环境快速部署Kafka(K8S外部可访问)

    迎访问我的GitHub 这里分类和汇总了欣宸的全部原创 含配套源码 https github com zq2599 blog demos 如何快速部署 借助Helm 只需少量操作即可部署kafka kafka和zookeeper对存储都有需
  • Anaconda中安装opencv-python

    直接安装opencv python pip install opencv python 直接安装opencv python总是失败 因此选择在清华源中下载对应的opencv python版本 我这里是python3 6 下载到相应目录下进行
  • Python中with open () as f

    with open log txt w as log f for i in range 4 print i i 0 1 2 3 log f write Epoch d Total Loss d Val Loss d i i i log f
  • 微信支付之公众号支付

    经过近一周的敲代码 终于把公众号支付和H5支付实现完成并测试通过 特此分享一些流程 一方面自己记录另一方面给新入门的一点思路 本文介绍普通商户的公众号支付 一 基本信息和配置 公众号支付的前提是要有一个拥有支付功能的公众号和一个已经通过IC
  • 黑马Linux笔记

    Linux概述 Linux是基于Unix的 是一种自由和开放源码的操作系统 存在着许多不同的Linux版本 但它们都使用了Linux内核 Linux系统的应用 服务器系统Web应用服务器 数据库服务器 接口服务器 DNS FTP等 嵌入式系
  • 【建议收藏】Pandas(一)——初见Series

    文章目录 引言 库的安装以及一些说明 库的安装 一些说明 Series 创建一个Series 从列表创建Series 从字典创建Series 标量创建Series Series的特点与属性 Series取值 Series调用函数 Serie
  • leetcode 26-删除排序数组中的重复项 python

    给定一个排序数组 你需要在原地删除重复出现的元素 使得每个元素只出现一次 返回移除后数组的新长度 不要使用额外的数组空间 你必须在原地修改输入数组并在使用 O 1 额外空间的条件下完成 示例 1 给定数组 nums 1 1 2 函数应该返回
  • 期货毁了多少家庭和个人?

    不是交易摧毁人生 而是贪婪和无知 交易是一个专业门槛很高的行业 但大多数人总认为我开完户就算入门了 偏偏你在专业性不足 一知半解的时候是意识不到交易的风险的 你会不会买辆车不考驾照就上路 加速踩油门 减速踩刹车 转弯打方向 看起来也挺简单的
  • java set 比较函数_【Java提高十七】Set接口集合详解

    三 Set接口 Set是一种不包括重复元素的Collection 它维持它自己的内部排序 所以随机访问没有任何意义 与List一样 它同样运行null的存在但是仅有一个 由于Set接口的特殊性 所有传入Set集合中的元素都必须不同 同时要注
  • 动态SQL之choose、when、otherwise标签

    动态SQL之choose when otherwise标签 choose when otherwise chose 父标签 when 相当于if else if 只要有一个条件成立 其它的都不判断了 otherwise 相当于else 若所
  • ctf.show web7

    判断字符型 1 报错 1 更换 反复尝试如果正常返回为字符型注入 判断数字型注入的方法 1 与原界面返回不同或报错 1 and 1 1与原页面返回相同 1 and 1 2与原页面返回不同 即可得出为数字型 id 1 order by 3 与
  • 微信小程序新规,规范用户隐私保护指引

    背景 新功能发版突然遇到弹窗提示 需要更新用户隐私保护指引的设置 否则无法发布新版本 这里吐槽一下 在此之前微信小程序后台消息并未收到相关通知 解决路径如下 入口有两处 第一处如图 第二处入口 发布版本时会有提示 直接拦截 让完善协议 如图
  • java中的<;和>;分别是什么意思

    今天在做java笔试题的时候 有一题出现了这个符号 由于我不认识这个符号就做错了 题目如下 这题的答案是A 而我选了C 后面百度才知道 lt 的意思是小于 lt 符号 在用markdown写文章的时候 就会显示 笔者在这里贴出其他类似的符号
  • C#异步编程学习笔记4 之 异步函数

    C 异步编程学习笔记4 之 异步函数 异步函数 awaiting async 修饰符 异步方法如何执行 可以 await 什么 捕获本地状态 await 之后在哪个线程上执行 UI 上的 await 代码运行原理 与粗粒度的并发相比 编写异
  • Blender插件BoxCutter 7.1.7v15 硬表面建模2.91+教程Box Cutter

    Boxcutter旨在成为最快的屏幕3d视图绘图切割器 通过时间和经验来学习和增强了工具 以使工作流程尽可能地人性化地优化用户 提供各种行为来个性化体验 以使事情保持流畅 每天都会对这些工具进行严格的测试 以确保它们不仅可以与当前版本的Bl
  • Flask-文件上传

    在Flask中处理文件上传非常简单 它需要一个enctype属性设置为 multipart form data 的HTML表单 将该文件提交到指定URL 也可以配置上传文件路径和指定上传文件大小 实例 upload html文件中包含一个f