我有這種形式,但我不知道如何創建將正確執行此操作的有效內容。通過請求登錄到網站
<form method="post" action="/login" name="loginform" id="loginForm">
<fieldset id="fs">
<label for="username">Username:
<input type="text" id="username" name="username" />
</label>
<label for="password">Password:
<input type="password" id="password" name="password" />
</label>
<input type="hidden" name="act" value="login" />
<input name="submit" type="submit" id="submit" value="Login" />
</fieldset>
</form>
我試圖做payload = {"username":"blah","password":"blah"}; r=requests.post(url, data=payload)
,但我沒有得到我預期的反應;即r.text
沒有預期的「登錄失敗」行。 但是,當我填寫表單並嘗試通過瀏覽器第一次登錄時,表示這是我第二次登錄失敗。
我正在玩的網站是www.thepiratebay.se,我正在努力的是能夠以編程方式上傳torrent文件。
---編輯---
我使用新的代碼是
import requests
user = "username"
pswd = "password"
url = "http://www.thepiratebay.se/login"
payload = {
"act":"login",
"username":user,
"password":pswd,
"submit":"Login"
}
r = requests.post(url, data=payload, allow_redirects=True)
print r.text
仍然沒有工作! r.text
只是默認的登錄頁面。再建議?
您沒有包含'act'參數。 –