モジュールを使用して Web サイトにログインしようとしていrequests
ます。ログインフォームはjavascriptだと思います。ユーザー名とパスワードを含むフォーム名を特定する必要があります。Firebug で並べ替えてみUsername
ました。ウェブサイトのフィールドにカーソルを合わせると、コードは次のようになります。
<div id="ctl00_main_login_dvUserTxt" class="dvUsr visible">
<input id="ctl00_main_login_UserNameText" class="f10 b txMain tx" type="text"
ondrop="javascript: return false;" ondrag="javascript: return false;" oncut="javascript:
return false;" oncontextmenu="javascript: return false;" onblur="javascript: return
false;" onpaste="javascript: return false;" oncopy="javascript: return false;"
autocomplete="off" tabindex="1" readonly="readonly" maxlength="20" value="Uzytkownik"
name="ctl00$main$login$UserNameText">
パスワードについても同じことを行い、それらの任意の組み合わせを試しましたが、どれも正しくありませんでした。
また、ページのソースを調べたところ、適切な関数であると思われるものは次のとおりです。
<div>
<input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" />
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
value="/wEPDwULLTE2NjY0NzYzMDhkZBd9ab2vcPcoEfqJ+ZqlPm7gs1iA" />
</div>
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['aspnetForm'];
if (!theForm) {
theForm = document.aspnetForm;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
eventTarget
ユーザー名のフォームかもしれないと思ったのですが、そうではありません。
フォーム名を見つける正しい道を進んでいますか、またはこれらのフォーム名を実際に特定するにはどうすればよいですか?