python机械化新页面

时间:2013-09-04 16:34:02

标签: python mechanize

我正在使用python和mechanize登录网站。我可以登录,但是一旦我进入,我需要机械化选择一个新表格,然后再次提交。我需要做3次或者有时间才能到达我需要的页面。一旦我登录了我在第二个apge上选择表格的方式吗?

import mechanize
import urlparse

br = mechanize.Browser()
br.open("https://test.com")
print(br.title())
br.select_form(name="Login")
br['login_name'] = "test"
br['pwd'] = "test"
br.submit()

new_br = mechanize.Browser()
new_br.open("test2.com")
new_br.select_form(name="frm_page2")  # where the error happens

我收到以下错误。

FormNotFoundError: no form matching name 'frm_page2'

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

在查找表单时您无法使用name=' ',因为Mechanize已使用' name'本身。

如果您想按名称查找内容,则需要执行以下操作:

br.select_form(attrs={'name': 'Login'})