资讯专栏INFORMATION COLUMN

怎么使用Flask实现接收与上传图片

89542767 / 340人阅读

       小编写这篇文章的主要目的,主要是来给大家做出一个比较详细解答,主要是给大家解答关于python中的一些知识,比如Flask实现接手与上传图片,下面就给大家详细解答下。


  接下来给搭建讲解Flask如何接受图片文件,上面是复杂写法,下面是简单写法,二选一即可。


  思路整理:接收图片->定义一个图片存放的位置->给图片重命名(为了唯一性)->保存操作->返回状态


  方案一:下面是复杂的写法:


  basedir=os.path.abspath(os.path.dirname(__file__))#定义一个根目录用于保存图片用
  import os,sys,random,string
  from app import app,request,json,url_for
   app.route('/api/v1/ckeditorUpload',methods=['GET','POST'])
  def editorData():
  #生成随机字符串,防止图片名字重复
  ran_str=''.join(random.sample(string.ascii_letters+string.digits,16))
  #获取图片文件name=upload
  img=request.files.get('upload')
  #定义一个图片存放的位置存放在static下面
  path=basedir+"/static/img/"
  #图片名称给图片重命名为了图片名称的唯一性
  imgName=ran_str+img.filename
  #图片path和名称组成图片的保存路径
  file_path=path+imgName
  #保存图片
  img.save(file_path)
  #这个是图片的访问路径,需返回前端(可有可无)
  url='/static/img/'+imgName
  #返回图片路径到前端
  return url


  方案二:下面是简单写法:


  思路:接收图片->定义保存路径->获取名称->保存操作
  basedir=os.path.abspath(os.path.dirname(__file__))#定义一个根目录用于保存图片用
  from app import app,request
   app.route('/api/v1/ckeditorUpload',methods=['GET','POST'])
  def editorData():
  #获取图片文件name=upload
  img=request.files.get('upload')
  #定义一个图片存放的位置存放在static下面
  path=basedir+"/static/img/"
  #图片名称
  imgName=img.filename
  #图片path和名称组成图片的保存路径
  file_path=path+imgName
  #保存图片
  img.save(file_path)
  #url是图片的路径
  url='/static/img/'+imgName
  return url

  到此为止,这篇文章就为大家介绍到这里了,希望可以为大家带来更多帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128238.html

相关文章

  • python大佬养成计划----Django图书人物适配系统(前端)

    摘要:两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,使用装饰器定义路由,而使用正则表达式定义路由。中间什么都没有,表示这个正则匹配的是根目录,。最后修改的网页显示如图项目框架图 Django添加路由 与flask一样,django也需要使用路由将URL与服务端要执行的代码关联。 两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,flask使用装饰器@app.route...

    shusen 评论0 收藏0
  • python大佬养成计划----Django图书人物适配系统(前端)

    摘要:两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,使用装饰器定义路由,而使用正则表达式定义路由。中间什么都没有,表示这个正则匹配的是根目录,。最后修改的网页显示如图项目框架图 Django添加路由 与flask一样,django也需要使用路由将URL与服务端要执行的代码关联。 两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,flask使用装饰器@app.route...

    qqlcbb 评论0 收藏0
  • python大佬养成计划----Django图书人物适配系统(前端)

    摘要:两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,使用装饰器定义路由,而使用正则表达式定义路由。中间什么都没有,表示这个正则匹配的是根目录,。最后修改的网页显示如图项目框架图 Django添加路由 与flask一样,django也需要使用路由将URL与服务端要执行的代码关联。 两者相同的地方是都可以将一个普通函数变成视图函数。不同的是,flask使用装饰器@app.route...

    amuqiao 评论0 收藏0
  • CentOS 下用 Nginx 和 uwsgi 部署 flask 项目

    摘要:服务器上部署项目说白了就是让你的项目在这台服务器上运行并且做到可以在公网上访问你的项目。可以解决项目与项目之间对同一个包的不同版本的依赖问题。有可能会报的错是项目相关模块的引入路径不对,修改一下便可。 前一阵自己用flask框架写了一个博客程序,写完之后想部署到服务器上,因为是小白,所以自己google了好些资料,讲的零零碎碎而且有些地方只是告诉你怎么配置,但具体为什么这样配却没有说明...

    renweihub 评论0 收藏0
  • CentOS 下用 Nginx 和 uwsgi 部署 flask 项目

    摘要:服务器上部署项目说白了就是让你的项目在这台服务器上运行并且做到可以在公网上访问你的项目。可以解决项目与项目之间对同一个包的不同版本的依赖问题。有可能会报的错是项目相关模块的引入路径不对,修改一下便可。 前一阵自己用flask框架写了一个博客程序,写完之后想部署到服务器上,因为是小白,所以自己google了好些资料,讲的零零碎碎而且有些地方只是告诉你怎么配置,但具体为什么这样配却没有说明...

    shuibo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<