ページのツイルを使用してクローラーを作成しようとしていますが、ログインする必要があります。フォームに入力できます。しかし、ツイルの submit() 関数はボタンを「クリック」していないようです。
Form name=fSSUser_Logon (#1)
## ## __Name__________________ __Type___ __ID________ __Value__________________
1 TFORM hidden TFORM SSUser.Logon
2 TPAGID hidden TPAGID SRLpKQyn1yc8
3 TEVENT hidden TEVENT
4 TXREFID hidden TXREFID 2
5 TOVERRIDE hidden TOVERRIDE
6 TDIRTY hidden TDIRTY 1
7 TWKFL hidden TWKFL
8 TWKFLI hidden TWKFLI
9 TFRAME hidden TFRAME
10 TWKFLL hidden TWKFLL
11 TWKFLJ hidden TWKFLJ
12 TREPORT hidden TREPORT
13 TRELOADCMP hidden TRELOADCMP
14 TRELOADID hidden TRELOADID SRLpKQy1nyc7
15 TOVERLAY hidden TOVERLAY
16 RELOGON hidden RELOGON
17 USERNAME text USERNAME
18 PASSWORD password PASSWORD
19 Logon button Logon Logon
上記のようにページに showforms() を追加します。
ボタンの実際のコードは次のとおりです。
<input type="button" class="clsButton" id="Logon" name="Logon" tabindex="3" value="Logon" title="Logon">
使用できるフォーメーションはありません。
これまでの私のコード:
from twill.commands import *
from twill import get_browser
go("https://trakcarelabwebview.nhls.ac.za/trakcarelab/csp/logon.csp")
showforms()
fv("1", "USERNAME", "xx")
fv("1", "PASSWORD", "xx")
fv("1", "Logon", "Logon")
formaction('Logon','https://trakcarelabwebview.nhls.ac.za/trakcarelab/csp/logon.csp#TRAK_main')
submit()
show()
showforms()
フレーム「TRAK_main」は、必要な HTML を含むフレームです。最後の showforms() は、「ログイン」前とまったく同じフォームを表示します。
ここで何が間違っていますか?