2017-02-13 93 views
0

請求庫「http://docs.python-requests.org/en/master/」 當這段代碼運行時,它應該登錄到指定爲url的網站,我想我已經有那部分工作成功,但真的不知道。我認爲最近發生的事情是因爲我沒有正確地告訴網站保持python瀏覽器登錄,它會立即退出,在發生這種情況之後,當我要求它打印網站代碼時,它會再次被重定向到登錄頁面,然後打印而不是我想要打印的索引。Python 3.6幫助請求模塊

在像有人來修理我的代碼或因此它登錄並下載索引頁面,如果你會這麼好心告訴我爲什麼我的代碼不工作,說明至少有一點你的代碼重寫短ID。

import requests 

url = 'http://www.abcol.ac.uk/studentnet/timetables/login.cfm' 
payload = { 
    'usernameinput': 'ausername', 
    'passwordinput': 'apassword', 
} 

umeme = requests.session() 
r = requests.post(url, data=payload, headers={"Connection": "keep-alive"}) 
print (r.cookies) 
page = umeme.get('http://www.abcol.ac.uk/studentnet/timetables/index.cfm') 
print(page.content) 

頁頭是如下https://gyazo.com/7b402bf0142871cb03b379ae450792bf 不要猶豫,問我要更多的信息,如果你需要它 預先感謝任何幫助。

+0

什麼是第一個請求的'status_code'?嘗試在第二個請求中添加來自第一個請求的cookie,作爲'umeme.get('http://www.abcol.ac.uk/studentnet/timetables/index.cfm',cookies = r.cookies.get_dict())' – Andersson

回答

0

您的負載不正確。表單提交的與有效載荷端點「form_submitted =真&用戶名= &密碼=」

您的有效載荷應該模仿這個,像這樣:

payload = { 
    'username': 'ausername', 
    'password': 'apassword', 
    'form_submitted': 'true' 
}