我正在尝试发布一个http表单并获得响应。我理解“请求”可能是要走的路。我想发布到这个页面上的登录表单:www.dust2.dk/Login比较响应,检查我是否收到错误“Der er ikke registreret nogen bruger med den email”(“没有用户注册的那个电子邮件“)
某种方式表单未被发布或响应未被保存。我试图寻找解决方案,但无济于事。这是我的代码
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#imports
import requests
#code
def main():
r = requests.post('http://dust2.dk/Login', data = {'email' : 'testmail@test.dk', 'password' : 'testest'})
if 'Der er ikke registreret nogen bruger med den email' in r.text:
print 'You done did it mate!'
else:
print 'Nope! Keep trying'
正如您可能猜到的结果是:“不!继续尝试”如果我打印出响应r,我只需获取页面的来源www.dust2.dk/Login。你有什么指示我可能在这里做错了吗?
答案 0 :(得分:0)
前几天我必须通过发送Python的发布请求来做类似的事情。我跟着this。您需要导入并使用urllib和urllib2。
import urllib
import urllib2
url = 'http://dust2.dk/Login'
values = {'email' : 'email@here',
'password' : 'blahblah'}
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
the_page = response.read()
编辑:如果您使用的是Python 3,请实际关注this指南。 看看这是否符合您的要求。