Python请求登录返回的登录页没有

2024-10-05 10:48:24 发布

您现在位置: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代码:

^{pr2}$

当我从浏览器登录时,以下是请求头:

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

我什么都试过了,在谷歌上搜索了很多次。 我会很感激你的帮助。在


Tags: divformidbasemodelslogindepassword
1条回答
网友
1楼 · 发布于 2024-10-05 10:48:24

你的有效载荷不是必需的。总是使用chrome的开发者标签(网络)外包真正的发布/获取信息

使用这个有效载荷

payload = {'loginName':user_field,
           'loginPwd':password_field,
           'btnLogin':''}

你的口述是这样的:

^{pr2}$

dict的键与实际数据的名称不同,并且您错过了btnLogin字段。遗憾的是,如果有任何错误的信息,web服务器会丢弃您的请求,因为它有一个必须传递的特定“硬编码”值。在

相关问题 更多 >

    热门问题