如何使用python请求模块发送带有数据的发布请求?

时间:2014-08-12 10:04:40

标签: python post python-requests

我想从用户那里获取密码,然后将帖子请求发送到网址('http://example.com/welcome?user=' +(某个用户名))。那么如何发送包含数据的帖子请求呢?

1 个答案:

答案 0 :(得分:0)

data = {'password': SOME_PASSWORD}
requests.post(url, data=data)

你的网址就像是

'http://example.com/welcome?user={}'.format(username)'

然后在您的服务器上,您可以在post参数中获取get参数和密码中的用户名。但是您可以将用户和密码放在数据字典中并发布两个字段

编辑:

我同意Martijn认为在get中传递一些数据和在post中传递一些数据是个坏主意,所以如果没有充分的理由去做,你可能应该避免使用它。

我还喜欢使用请求params参数和数据参数的想法,如果你绝对需要在GET中传递用户名和POST中的密码,那么你的请求将成为:

requests.post('http://example.com/welcome', data={'password': SOME_PASSWORD}, params={'user': SOME_USERNAME})

但最好的方法是:

requests.post('http://example.com/welcome', data={'password': SOME_PASSWORD, 'user': SOME_USERNAME})

对于之前的简短回答道歉,这是一个在休息时间的快速回答。请原谅我: - )