在用 requests模拟提交一个网站的回复时,通过调试面板发现表单提交是 multipart/form-data而非普通的 form表单的 application/x-www-form-urlencoded
格式为
在此卡住了,不知道改如何提交这种格式的
搜索后发现前人的解决办法也并不十分恰当
其它关于multipart/form-data 的只看到了关于文件上传的文章,requests 官方文档也是文件而非表单。
欢迎协助修改问题描述让问题描述更精准而简练
望各位帮忙
在用 requests模拟提交一个网站的回复时,通过调试面板发现表单提交是 multipart/form-data而非普通的 form表单的 application/x-www-form-urlencoded
格式为
在此卡住了,不知道改如何提交这种格式的
搜索后发现前人的解决办法也并不十分恰当
其它关于multipart/form-data 的只看到了关于文件上传的文章,requests 官方文档也是文件而非表单。
欢迎协助修改问题描述让问题描述更精准而简练
望各位帮忙
你是想提交 application/x-www-form-urlencoded 这样的表单吗?
我想通过魔改请求headers可以实现
requests.post(url, headers={'Content-type': 'application/x-www-form-urlencoded'}, ...)
你看这样可以不,望采纳
asParm = {'cid': cid, 'tn': tn, 'type': 'image'}
file = {'file': ('1.jpg', open('./image/1.jpg', 'rb'), 'multipart/form-data', {'Expires': '0'})}
urlRet = requests.post(uploadmediaurl, data=asParm,files=file)
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
来自requests官方文档
http://docs.python-requests.org/en/latest/user/quickstart/#post-a-multipart-encoded-file
上面的例子是只传文件的情况
如果在传文件时还传递其他表单信息,可以请求时指定data参数