我一直在嘗試使用python requests
模塊在網頁上抓取網站,並且需要登錄到站點以檢索我想要的數據。我環顧四周,但不知道爲什麼它不工作。這是我到目前爲止的代碼:Python Web抓取請求自動登錄不工作
import requests
import bs4 as bs
login_url = "__withheld__"
target_url = "__withheld__"
login_data = { "username": "my_username", "password": "my_password"}
with requests.Session() as s:
page = s.get(login_url)
page_login = s.post(login_url, data = login_data)
page = s.get(target_url)
final_page = bs.BeautifulSoup(page.content, 'lxml')
print(final_page.title)
這是密碼箱的HTML:
<input name="username" type="text" id="username" class="metro-input" placeholder="Username" value="">
<span id="username-error" class=""></span>
<label class="ie789Only"> Password</label>
<input name="password" type="password" id="password" class="metro-input" placeholder="Password">
<input type="submit" name="button1" value="Sign in" id="button1" class="metro-button">
我認爲這可能與網站做要求用戶點擊按鈕,雖然我可能找不到解決方案。當我登錄自己的時候,我也嘗試在開發者控制檯中尋找任何表單,但沒有找到概述密碼/用戶名的明確形式。任何幫助表示讚賞。
更新 這裏是鏈接到由同一家公司(隱私)具有相同的安全功能運行一個網站,如果這是任何幫助:https://ashwood-vic.compass.education/login.aspx?sessionstate=disabled
你能發佈一個鏈接到網站?可能更容易知道你需要做什麼來完成這項工作 – emporerblk
這不是實際的鏈接(由於隱私),但是由完全相同的公司運行並具有完全相同的安全性https://ashwood-vic.compass .education/login.aspx?sessionstate = disabled –