使用Python在Mechanize中设置选择控件

时间:2011-12-21 12:57:43

标签: python forms controls mechanize

我正在尝试使用mechanize来选择表单

browser.select_form('frmChangeLanguage')

..得到了。

但我正在努力改变表单中的下拉框,然后使用新值提交表单。控件如下所示:

<table>
<tr>
<td>
<select id="controlID" class="select" name="selectLang">
<option value='4' selected>en</option>
<option value='1' >fr</option>
<option value='2' >hk</option>
</select>
</td>
</tr>
<tr>
<td><input type="submit" name="button" id="button" value="Submit"/></td>
</tr>
</table>

我现在正在做:

control = browser.form.controls[0]
control._value = 1    
browser.submit(name='button')

但这似乎不起作用。有任何想法吗? 我在Windows上安装了带有Mechanize的Python 2.7。

1 个答案:

答案 0 :(得分:6)

根据docs,以下内容应该有效:

form["selectLang"] = ["1"]
mechanize.urlopen(form.click())