如何在使用mechanize和python进行URL重定向后查找表单

时间:2015-05-06 14:55:34

标签: python mechanize

所以这是我的问题,为了填写网站上的表格,我必须在页面上登录,然后重定向。

我设法填写登录表单并使用以下代码提交:

from mechanize import Browser
import mechanize
from mechanize._opener import urlopen
from mechanize._form import ParseResponse
from sys import argv

br = Browser()
br.set_handle_robots(False)   
br.set_handle_refresh(False)  
br.addheaders = [('User-agent', 'Firefox')]

USERNAME = 'my_username'
PASSWORD = 'my_password'
URL      = "my_url"

request = mechanize.Request(URL)
response = mechanize.urlopen(request)
forms = mechanize.ParseResponse(response, backwards_compat=False)

form = forms[0]

form["Email"] = USERNAME
form["Passwd"] = PASSWORD

x = urlopen(form.click()).read () 

print x

当我打印x时,我获得了重定向页面的html代码(我的提交工作正常,我已登录)。 但现在我想填写我被重定向的页面上的表单。我没有设法在此URL上找到该表单。一个想法/帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试

  

x = br.submit()。read()

代替

  

x = urlopen(form.click())。read()