我试图使用python请求登录到网页,结果是相同的登录页面,没有任何登录错误。Python请求登录 - 返回的登录页面没有错误
这是登录表单:
<form method="post" action="login.php" id="yw0" class="well form-horizontal">
<div class="login">
<div class="form">
<div class="control-group">
<label for="userInput" class="control-label required">Benutzer</label>
<div class="controls">
<input type="text"
name="loginName"
maxlength="32"
id="userInput">
<span style="display:none"
class="help-inline error"
id="VierCom_Base_Models_LoginForm_username_em_"></span>
</div>
</div>
<div class="control-group">
<label for="VierCom_Base_Models_LoginForm_password" class="control-label required">Passwort</label>
<div class="controls">
<input type="password"
name="loginPwd"
maxlength="32"
id="VierCom_Base_Models_LoginForm_password">
<span style="display: none"
class="help-inline error"
id="VierCom_Base_Models_LoginForm_password_em_"></span>
</div>
</div>
<div class="control-group">
<div class="controls">
<button type="submit"
name="btnLogin"
class="btn">Login</button>
</div>
</div>
</div>
</div>
</form>
这是我的Python代码:
import requests
import re
import requests.utils, pickle
import argparse
import time
from bs4 import BeautifulSoup
import csv
user_field = "loginName"
pass_field = "loginPwd"
with requests.session() as c:
login_url = 'https://login.professional-cockpit.de/login.php'
after_login_url = 'https://login.professional-cockpit.de/qlikView.php'
USERNAME = "*********"
PASSWORD = "*********"
c.get(login_url)
login_data = dict(user_field=USERNAME,pass_field=PASSWORD)
### login to website
res = c.post(login_url, data=login_data)
print(res.text)
当我从浏览器登录,这是请求头:
POST /login.php HTTP/1.1
Host: login.professional-cockpit.de
Connection: keep-alive
Content-Length: 51
Cache-Control: max-age=0
Origin: https://login.professional-cockpit.de
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Referer: https://login.professional-cockpit.de/login.php
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.8,he;q=0.6,de;q=0.4
Cookie: PHPSESSID=g28c793759o9nthgrhd0p99536
我尝试了所有的东西并搜索了很多次。 我将不胜感激任何帮助。
只是为了测试目的,尝试通过硬编码'Cookie' –
我得到了相同的结果 –
你试过欺骗用户代理或引用? –