web-dev-qa-db-ja.com

Python名前のないフォームを機械的に選択する

機械化してページからフォームを選択させようとしていますが、問題のフォームのhtmlに「name」属性がありません。私は何をすべきか?使おうとすると

br.select_form(name = "")

その名前でフォームが宣言されておらず、関数に名前の入力が必要であるというエラーが表示されます。ページにはフォームが1つしかありませんが、そのフォームを選択する他の方法はありますか?

31
Mantas Vidutis

試してみてください:

br.select_form(nr=0)

最初のフォームを選択するには

機械化で ソース

def select_form(self, name=None, predicate=None, <b>nr=None</b>):
    """
    ...
    nr, if supplied, is the sequence number of the form (where 0 is the
    first).
    """
54
YOU

名前に関係なく複数のフォームのコードを実行する場合は、すべてのフォームをループして、次にどのフォームが機能するかをスクリプトに通知できます。

currentForm = 0
for form in br.forms(): # Iterate over the forms
        br.select_form(nr = currentForm) # Select the form
        '''
        The code you want to run for every form
        '''
        currentForm += 1 # Add 1 to the current working form so the script knows what form is working next
0
Stam Kaly