2010-09-20 42 views
2

我正在使用斜纹和python来编写Web爬虫。 showforms()返回斜纹 - 如何选择同名的多个选择

Form name=customRatesForm (#1) 
## ## __Name__________________ __Type___ __ID________ __Value__________________ 
10 originState    hidden originState TN 
11 destState    hidden destState IL 
12 originZip    text  originZip 37130 
13 destZip     text  destZip  60602 
16 classes     select classes1  ['0000'] of ['0000', '0500', '0550', ... 
17 weight     text  weight1  600 
18 weight     text  weight2  
19 weight     text  weight3  
20 weight     text  weight4  
30 1 submit     submi ... submit  

我已经取出了大部分行以方便阅读。我的问题是,实际上有12个选择,他们都有'班'的名字。这些通过CGI作为列表。但是,斜纹似乎无法区分它们。此外,当我运行

fv('1', 'classes', '0500') 

我收到以下错误:

_mechanize_dist.ClientForm.AmbiguityError: id=None name='0500' label=None 

我已经尝试了一些解决方法,包括用自己的ID重命名的选择,然后重写提交功能使用jQuery选择和重新分配他们的“名”属性返回到“类”:

$('.myclasses').attr('name', 'classes'); 

当我在浏览器中查看这一点,似乎重新分配预期。然而,斜纹标题仍然显示为提交名称为'classes1','classes2'等。

任何帮助将不胜感激。我摆脱了我所知道的解决方法。因为这不是我的页面,所以我受到他们管理员对'类'选择列表的期望。

回答

1

据我发现,直到现在,没有办法用斜纹布做到这一点。任何解决方案将成为斜纹外的解决方法。