使用Python请求登录CloudFlare后面的网站

时间:2015-06-10 06:08:44

标签: python python-requests

尝试发布网站登录但似乎无法正常运行。

以下是返回的错误:

<html>
<head><title>400 Bad Request</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<hr><center>cloudflare-nginx</center>
</body>

这是我尝试发布登录请求的表单:

<form name="loginform" id="loginform" method="post" action="login.php" onsubmit="return formVal();">
<table cellpadding="2" cellspacing="1" border="0" align="center">
    <tr valign="top">
        <td align="right">Username&nbsp;</td>
        <td align="left"><input type="text" name="username" id="username" class="inputtext" autofocus="autofocus" /></td>
    </tr>
    <tr valign="top">
        <td align="right">Password&nbsp;</td>
        <td align="left"><input type="password" name="password" id="password" class="inputtext" /></td>
    </tr>
    <tr valign="top">
        <td colspan="2" align="right"><input type="checkbox" name="keeplogged" value="1" />Keep me logged in</td>
    </tr>
            <tr>
                <td colspan="2" align="right"><input type="submit" name="login" value="Log In!" class="submit" /></td>
    </tr>
</table>
<br /><br />
Lost your password? <a href="login.php?act=recover">Recover it here!</a>

请帮忙!     

1 个答案:

答案 0 :(得分:2)

首先尝试获取页面,然后发布,就像这样 -

with cfscrape.create_scraper() as s:
    p = s.get(login_url)
    p = s.post(login_url, data=payload)
    print p.content
相关问题