通过python脚本将图像上传到python flask API [重复]

Posted

技术标签:

【中文标题】通过python脚本将图像上传到python flask API [重复]【英文标题】:upload image via python script to python flask API [duplicate] 【发布时间】:2018-01-11 02:18:17 【问题描述】:

我尝试将图像上传到 python Flask API。 Flask 代码基于以下 sn-ps 和教程:

flask doc stack: ReSTfully upload file in Flask without multipart/form-data

我已经尝试过关于这个主题的 *** 上提供的不同解决方案,但它们都无法解决问题。

我的烧瓶代码

@app.route("/rupload/<filename>", methods=['POST', 'PUT'])
def rupload(filename):
    # Sanity checks and setup skipped.

    filename = secure_filename(filename)
    fileFullPath = os.path.join(UPLOAD_FOLDER, filename)

    with open(fileFullPath, 'wb') as f:
        f.write(request.get_data())

    return jsonify(
        'filename': filename,
        'size': os.path.getsize(fileFullPath)
        )

脚本

文件 test.jpg 与此脚本位于同一文件夹中。我尝试使用 python 代码复制curl -v -H 'Content-Type: application/octet-stream' -X POST --data @test.jpg localhost:5000/rupload/test.jpg 的效果,因为我不想使用 curl。

url='localhost:5000/rupload/test'
headers='Content-Type':'application/octet-stream'
requests.post(url,headers=headers,data='file.jpg')

运行此脚本时(Flask 应用程序也在运行)它会抛出以下错误:

    Traceback (most recent call last):
  File "<path to my script.py>", line 10, in <module>
    requests.post(url,headers=headers,data='file.jpg')
  File "C:\Program Files\Python35\lib\site-packages\requests\api.py", line 112, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "C:\Program Files\Python35\lib\site-packages\requests\api.py", line 58, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Program Files\Python35\lib\site-packages\requests\sessions.py", line 508, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Program Files\Python35\lib\site-packages\requests\sessions.py", line 612, in send
    adapter = self.get_adapter(url=request.url)
  File "C:\Program Files\Python35\lib\site-packages\requests\sessions.py", line 703, in get_adapter
    raise InvalidSchema("No connection adapters were found for '%s'" % url)
requests.exceptions.InvalidSchema: No connection adapters were found for 'localhost:5000/rupload/test'

我不太确定如何解决这个问题。到目前为止我尝试的所有方法都不起作用。 我猜API工作正常(它没有识别请求也没有抛出错误)并且错误完全是由脚本引起的。 API 的所有其他部分(此处未显示)正常工作。如果有人能指出如何解决这个问题的方向,那就太好了。

谢谢

【问题讨论】:

【参考方案1】:

使用适当限定的 URL:

url='http://localhost:5000/rupload/test'

【讨论】:

以上是关于通过python脚本将图像上传到python flask API [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python脚本通过FTP上传文件

我可以从我的 MSSql 服务器获取数据并通过一些 python 脚本将其上传到应用引擎吗?

使用 GitLab CI 通过 python 脚本部署到 FTP

使用selenium phantomjs上传文件时,Python脚本会挂起

无法从 python 服务器将图像上传到 Firebase 存储

从python上传到Bigquery