使用mechanize

时间:2015-11-26 21:06:57

标签: ruby forms button mechanize dropdown

我正在使用Ruby中的mechanize编写脚本。我试图选择表单的值(下拉列表),但是在第一个字段进行选择之前,表单的第二个字段的值不会出现。它会阻止以下内容 -

my_form[0].options[2].select
my_form[1].options[2].select
my_form[2].options[2].select
my_form[3].options[0].select

因为此时第二个字段没有任何值。然而,第一部分的选择就像它应该的那样。

表单中的行看起来像这样

<select id="DistrictId" name="DistrictId"><option value="">---SELECT---</option>
<option value="3">Alaska Gateway School District</option>
...
</select>
<input type="button" id="selectDistrict" value="SELECT">

我看到字段后面有一个“选择”按钮,但是我不确定如何点击它并填充第二个字段。

当我使用以下

my_form.button_with(:value => "SELECT").click

我没有收到错误,但它也没有重新填充第二个字段。我在第一个字段的选择之后尝试放置该行,它让我没有进一步。

我还没有看到任何对下拉菜单有用的东西。

Use a Login form with Mechanize有助于处理表单,但对实际选择该按钮没有任何帮助。

我需要做的另一件事是循环显示下拉菜单中的所有选项。

我已经找到了一些关于下拉和蟒蛇的事情,这也有所帮助。

我可以用

选择部分
.options[x]

但我不确定如何知道何时结束循环。看起来这些元素存储为一个数组,因此我可以在表单上执行.each。 http://crabonature.pl/posts/23-automation-with-mechanize-and-ruby对于浏览表单很有帮助,但是在返回到表单下方的字段之前,必须先选择顶部的表单值。

0 个答案:

没有答案