2
我正在嘗試使用Python的請求庫來自動從大學網站獲取我的成績。網址是https://acorn.utoronto.ca/sws/transcript/academic/main.do?main.dispatch,但有幾個重定向。我有以下簡單的代碼,但它似乎並沒有做我想做的事情。重定向登錄cookie或通過POST傳遞數據?
import requests
payload = {"user" : "username", "pass" : "password"}
r = requests.post("https://acorn.utoronto.ca/sws/transcript/academic/main.do?main.dispatch", data= payload)
print(r.text)
輸出如下:
C:\Users\johnp\AppData\Local\Programs\Python\Python35-32\python.exe
C:/Users/johnp/Desktop/git_stuff/16AugRequests/acorn_requests.py <html> <head> </head> <body onLoad="document.relay.submit()"> <form method=post action="https://weblogin.utoronto.ca/" name=relay> <input type=hidden name=pubcookie_g_req value="b25lPWlkcC51dG9yYXV0aC51dG9yb250by5jYSZ0d289Q0lNRl9TaGliYm9sZXRoX1BpbG90JnRocmVlPTEmZm91cj1hNWEmZml2ZT1HRVQmc2l4PWlkcC51dG9yYXV0aC51dG9yb250by5jYSZzZXZlbj1MMmxrY0M5QmRYUm9iaTlTWlcxdmRHVlZjMlZ5Um05eVkyVkJkWFJvJmVpZ2h0PSZob3N0bmFtZT1pZHAudXRvcmF1dGgudXRvcm9udG8uY2EmbmluZT0xJmZpbGU9JnJlZmVyZXI9KG51bGwpJnNlc3NfcmU9NSZwcmVfc2Vzc190b2s9LTczODQ3MDk2OCZmbGFnPTA=">
您沒有啓用Javascript,請點擊按鈕繼續。
我對此有何看法?我覺得我應該試圖通過一個cookie,但我怎麼會得到cookie?
在此先感謝。
編輯:這是我的東西從Firefox獲得: Network tab
這是否意味着我需要填寫整個表單作爲請求參數?
使用http代理或Chrome Developer Tools或Firefox的Firebug之類的工具。正常使用網站並觀察/記錄爲達到目的地所做的請求。然後,通過代碼重新創建這些請求。 – sberry
我建議你使用硒 – masnun
也許使用無頭瀏覽器? http://selenium-python.readthedocs.io/getting-started.html – martriay