Ani*_*niJ 5 python rest multipart python-3.x
我是Python新手并使用Python 3.2.我正在尝试编写一个python脚本,它将从用户机器(例如图像文件)中选择一个文件,并使用基于REST的调用将其提交给服务器.Python脚本应该调用REST URL并在调用脚本时提交文件.
这类似于上传文件时浏览器完成的多部分POST; 但在这里我想通过Python脚本来做.
如果可能的话,不想在Python中添加任何外部库,并希望使用核心Python安装保持相当简单的python脚本.
有人可以指导我吗?或者分享一些实现我想要的脚本示例?
Jes*_*ose 10
请求库是您所需要的.你可以安装pip install requests.
http://docs.python-requests.org/en/latest/user/quickstart/#post-a-multipart-encoded-file
>>> url = 'http://httpbin.org/post'
>>> files = {'file': open('report.xls', 'rb')}
>>> r = requests.post(url, files=files)
Run Code Online (Sandbox Code Playgroud)
PUT如果您知道图像 url 是什么,则上传图像的 RESTful 方法是使用request:
#!/usr/bin/env python3
import http.client
h = http.client.HTTPConnection('example.com')
h.request('PUT', '/file/pic.jpg', open('pic.jpg', 'rb'))
print(h.getresponse().read())
Run Code Online (Sandbox Code Playgroud)
upload_docs.py包含一个如何使用基本 http 身份验证上传文件的示例multipart/form-data。它支持 Python 2.x 和 Python 3。
您还可以使用requests以下方式发布文件multipart/form-data:
#!/usr/bin/env python3
import requests
response = requests.post('http://httpbin.org/post',
files={'file': open('filename','rb')})
print(response.content)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26752 次 |
| 最近记录: |