我使用Mechanize来填充过滤形式。 我的代码:
br = Browser()
br.open(self.domain)
br.select_form(nr=1)
br.find_control("pf_keywords").value = "Lisp"
response = br.click(type='button', nr=0)
#or
response = br.submit(label='Применить фильтр')
同时,提交按钮不在此表单的控件列表中。 此按钮的Html代码:
<button type="button" class="b-button b-button_flat b-button_flat_green" onclick="$('frm').submit();">Применить фильтр</button>
因此,使用click()和submit()方法无法生成表单提交。在这些方法中,搜索所需的控件并将参数传递给控件环境表单,因为所需的按钮不存在,引发错误:
mechanize._form.ControlNotFoundError: no control matching type 'button', kind 'clickable'
我该怎么办?如何按下按钮并获得结果?