将数据提交到Web门户

时间:2016-11-09 13:10:33

标签: python python-2.7

我目前正在尝试使用python访问网站,而且我在使用请求和机械化模块时遇到了一些麻烦。基本上我手动执行此任务的方式是我加载网站门户并登录然后单击按钮并填写表单并提交以接收下载。我已登录登录,无法提交用户名并登录,目前正在使用此方法

import requests
payload = {"username":"user","password":"pass"}
r = requests.post("portal login address",data=payload)
response = r.content
print(response)

但这给了我与get请求完全相同的输出,其中我没有包含有效负载。我也想知道如何模拟这些按钮点击和表单提交,我知道机械化可以使用,但我不知道如何

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式使用mechanize模块:

import re
import mechanize

br = mechanize.Browser()
br.set_handle_robots(False)

br.open("<page>")

# you can access the form by name or some other means
# ive used a loop here just as an example
for form in br.forms():
    form["username"] = "saurabhav"
    form["password"] = "8558881858"
    form.submit()

查看Mechanize