相关疑难解决方法(0)

从Python脚本使用POST发送文件

有没有办法从Python脚本使用POST发送文件?

python post file-upload http-post

128
推荐指数
3
解决办法
24万
查看次数

使用python urllib/urllib2发出一个http POST请求来上传文件

我想发一个POST请求,使用python将文件上传到Web服务(并得到响应).例如,我可以使用以下命令执行以下POST请求curl:

curl -F "file=@style.css" -F output=json http://jigsaw.w3.org/css-validator/validator
Run Code Online (Sandbox Code Playgroud)

如何使用python urllib/urllib2发出相同的请求?我到目前为止最接近的是:

with open("style.css", 'r') as f:
    content = f.read()
post_data = {"file": content, "output": "json"}
request = urllib2.Request("http://jigsaw.w3.org/css-validator/validator", \
                          data=urllib.urlencode(post_data))
response = urllib2.urlopen(request)
Run Code Online (Sandbox Code Playgroud)

我从上面的代码中得到了HTTP Error 500.但是既然我的curl命令成功了,那我的python请求肯定有问题吗?

我对这个话题很陌生,如果菜鸟问题有很简单的答案或错误,请原谅我.在此先感谢您的所有帮助!

python post http urllib urllib2

13
推荐指数
2
解决办法
4万
查看次数

标签 统计

post ×2

python ×2

file-upload ×1

http ×1

http-post ×1

urllib ×1

urllib2 ×1