【问题标题】:Uploading a file to Python bottle server without HTML form将文件上传到没有 HTML 表单的 Python 瓶服务器
【发布时间】:2015-12-07 17:36:43
【问题描述】:

目前我有一个选择文件并将其上传到服务器的 HTML 表单。 如何在没有 HTML 表单的情况下做到这一点。

<html>
<head></head>
<body>
<form action="/upload" method="post" enctype="multipart/form-data">

  Select a file: <input type="file" name="uploadinc" />
  <input type="submit" value="Start upload" />
</form>
</body>
</html>

我的瓶子服务器包含以下要上传的代码。

@route('/UploadFiles', method='POST')
def UploadFiles():
   print "inside upload files"
   uploadinc = request.files.get('uploadinc')

   uploadinc.save("/home/user/files/"+uploadinc.filename)

我想不使用 HTML UI 直接保存文件。

喜欢..

   request.files.get("file location in local machine if it is fixed(C:\\a.txt)")

但它越来越没有了。怎么做?

我可以像这样从 REST 客户端调用 Rest API。

如何以编程方式进行此调用?

【问题讨论】:

    标签: python file upload bottle


    【解决方案1】:

    你可以试试Requestslib:POST a Multipart-Encoded File

    如何以编程方式进行此调用?

    来自请求库documentation的修改示例:

    import requests
    url = 'http://10.208.53.89:7778/UploadFiles'
    multiple_files = [
       ('images', ('foo.png', open('foo.png', 'rb'), 'image/png')),
       ('images', ('bar.png', open('bar.png', 'rb'), 'image/png'))
    ]
    r = requests.post(url, files=multiple_files)
    

    【讨论】:

    • 请查看更新的答案.. 我可以从休息客户端打休息电话
    【解决方案2】:

    您想从命令行而不是在浏览器中上传文件?只需使用 curl:

    curl -F "image=@foo.png" -F "image2=@bar.png"  http://localhost:8888/uploadFiles
    

    Source.

    【讨论】:

      猜你喜欢
      • 2021-07-03
      • 2016-12-01
      • 2013-06-24
      • 2021-06-08
      • 1970-01-01
      • 2020-12-16
      • 2016-08-26
      • 2013-04-26
      相关资源
      最近更新 更多