我正在尝试使用以下代码登录:
with requests.Session() as c:
url = 'https://ww2.eagle.org/en.html'
c.get(url)
login_data = {
'username': 'username',
'password': 'pw',
}
c.post(url,data=login_data,headers={"Referer":"https://ww2.eagle.org/en.html"})
在带有以下代码的网站中:
<div id="signinFormId" class="section-label">
<form name="signinForm" method="post" action="https://www.eagle.org/security/GatewayLogin" target="_blank" class="signin-form">
<span id="close-login" class="close-login">×</span>
<div class="title-login-window">Login</div>
<fieldset>
<input type="text" name="username" id="username-login" required="" class="input-login">
<label class="input-lbl-login user" for="username-login">Username</label>
</fieldset>
<fieldset>
<input type="password" name="password" id="password-login" required="" class="input-login">
<label class="input-lbl-login pass" for="password-login">Password</label>
</fieldset>
<div class="links-container">
<input type="submit" class="btn-login" value="Login">
<span class="links-login-wrapper">
<a href="/en/abs-eagle-technical-support.html" class="link-login">Help</a>
<a href="/en/my-eagle-user-id-request.html" class="link-login">Register</a>
</span>
</div>
<div id="loginMsg">
<p class="error-msg-login">Login failed. Please enter a valid username and password.</p>
</div>
</form>
</div>
我没有收到错误,但登录没有通过。我在其他页面上使用了类似的代码,并且它以前工作过。我想也许这与需要按下登录页面才能出现的按钮有关,但我不确定......有什么想法吗?
您必须将数据提交到action
attr of form
, ref 中指定的 URL :
c.post('https://www.eagle.org/security/GatewayLogin', ...
ps:你真的不应该发布你的用户名和密码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句