我想用requests
模塊登錄到網站。登錄表單是在javascript中我認爲。我需要確定包含用戶名和密碼的表單名稱。我試圖對它進行排序我們的螢火蟲,我將鼠標懸停在該網站上的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
可能是用戶名的形式,它是不是雖然。
我在尋找表單名稱的正確途徑或我如何才能真正識別這些表單名稱?
您是否試圖模擬登錄請求,而不直接使用表單?如果是的話,那麼你可能會遇到這樣的情況:「如果Page.IsPostBack」在該頁面的底層代碼隱藏之後...... – 2013-05-14 16:50:41
我只是想登錄到網站以便稍後進行修改。 – nutship 2013-05-14 16:59:04