找不到匹配的表格

时间:2014-08-25 15:21:03

标签: python forms mechanize

我正在尝试使用Python的机械化模块来提交表单值并下载后续文件。但是,我一直收到错误消息,说脚本无法找到表单。

我使用的网站是here

我试图按县=' Linn'选择。

以下是我选择表格的脚本......

import mechanize

url = 'https://ccmis.dhs.state.ia.us/clientportal/providersearch.aspx'

br = mechanize.Browser()
br.open(url)
br.select_form(name="ctl00$MainContent$ddlSearchByLocationCounty")

我一直收到错误,表示没有匹配名称的表单。当我使用开发人员工具时,这是显示的名称。以下是HTML的摘要......

<select name="ctl00$MainContent$ddlSearchByLocationCounty" id="ctl00_MainContent_ddlSearchByLocationCounty" style="width:150px;">
    <option value="">Select County</option>
    <option value="Adair">Adair</option>
    <option value="Adams">Adams</option>
    <option value="Allamakee">Allamakee</option>

1 个答案:

答案 0 :(得分:0)

您需要先按名称,ID等选择表单,然后才能选择输入并设置其值。以下是将国家/地区设置为Linn的更新代码。我建议在http://www.pythonforbeginners.com/cheatsheet/python-mechanize-cheat-sheet处查看备忘单。

import mechanize

url = 'https://ccmis.dhs.state.ia.us/clientportal/providersearch.aspx'

br = mechanize.Browser()
br.open(url)
br.select_form(name="aspnetForm")

country = br.form.find_control("ctl00$MainContent$ddlSearchByLocationCounty")
country.value = ['Linn']
print country.value