0

HTMLフォームに入力したいのですが、pythonのmechanizeモジュールを使用しています。私のHTMLコードは、チェックボックスとドロップダウンのようなものです:

<div id="post_cd">
<input role="checkbox" id="cd_info" class="cbox" type="checkbox">
<span class="s-iso" style="display:none"></div>


<label for="type" id="cdtype" class="cd" style="width:60px;margin:1px;float:left;text-align:right;">CD type:</label>
<select id='cdtype' class=" ui-iso" style="width:100px;margin:1px;float:left;">
                <option value="CD1">Error1</option>
                <option value="CD2">Error1</option>
                <option value="CD3">Error2</option>
             </select>

私は次のことを試しましたが、エラーが発生しました:

チェックボックスの場合: form.find_control("cd_info").items[0].selected = True ドロップダウンの場合: form['cdtype']= ['Error1']

エラー:

    raise ControlNotFoundError("no control matching "+description)
mechanize._form.ControlNotFoundError: no control matching name 'cd_info'

    raise ControlNotFoundError("no control matching "+description)
mechanize._form.ControlNotFoundError: no control matching name 'cdtype'
4

1 に答える 1

0

<form>HTMLコードにはありません。そのため、呼び出し時に提供する HTML コードまたはサブスクリプション オペレーターのform周囲の要素を指していない可能性があります。find_control

フォームのテキストを印刷して、正しいものを見ていることを確認できます。

print form
于 2013-04-02T07:09:48.103 に答える