python机械化FormNotFoundError
我正在进行mechanize以获取表单元素python机械化FormNotFoundError,python,forms,mechanize,Python,Forms,Mechanize,我正在进行mechanize以获取表单元素 import mechanize br = mechanize.Browser() br.set_handle_robots(False) br.open("http://www.bnm.gov.my/index.php?ch=12&pg=622") br.select_form(name="Rates") 但这是一个错误: FormNotFoundError: no form matching name 'Rates' 即使有 <f
import mechanize
br = mechanize.Browser()
br.set_handle_robots(False)
br.open("http://www.bnm.gov.my/index.php?ch=12&pg=622")
br.select_form(name="Rates")
但这是一个错误:
FormNotFoundError: no form matching name 'Rates'
即使有
<form onsubmit="return validate();" method="get" action="index.php" name="Rates">
有人能帮忙吗
提前感谢尝试使用nr参数选择表单:
select_form(self, name=None, predicate=None, nr=None)
我猜这个页面只有一个表单,所以试试nr=0
如果页面中没有表单,则可能意味着它是使用Javascript添加的。在这种情况下,机械化是不够的。您必须使用Selenium或Spynner。页面上似乎有几个元素的名称和/或id为“rates”。这可能是个问题。机械化似乎看不到任何形式
[i.name for i in br.forms()]
返回一个空列表。其中有一条注释可以解释此行为。使用wget
检索页面也不会生成该表单。