亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法使用python中的post請求登錄網站

無法使用python中的post請求登錄網站

蕪湖不蕪 2023-02-07 10:50:43
我正在嘗試輸入我的用戶名、密碼并登錄到網站。我是初學者,也是第一次嘗試這個。我不知道我是否必須在此處包含任何其他數據。我正在嘗試的示例網站是:http ://testing-ground.scraping.pro/login 。我正在傳遞我的憑據并通過打印 page.content 檢查成功登錄后是否出現歡迎頁面的內容。但是它顯示訪問被拒絕的內容(當您輸入錯誤的憑據時出現)。我不知道我在這里錯在哪里。import requestswith HTMLSession() as c:    url='http://testing-ground.scraping.pro/login?mode=login'    usr='admin'    pwd='12345'    c.get(url)    login_data=dict(username=usr,password=pwd)    c.post(url,data=login_data)    page=c.get('http://testing-ground.scraping.pro/login?mode=welcome')    print(page.content)
查看完整描述

2 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

我沒有對此進行測試,但似乎您在請求中使用了錯誤的用戶名和密碼參數名稱。快速檢查站點發送的請求顯示:

http://img1.sycdn.imooc.com//63e1bc9c00011d1e02270160.jpg

如您所見,在表單數據中,用戶名發送為usr,密碼發送為pwd。但是,你在構建登錄數據的dict時,使用login_data=dict(username=usr,password=pwd)了 , 構造了一個 , 的dict {"username": usr, "password": pwd},與實際請求的要求不符。你想要的是dict(usr=usr,pwd=pwd).



查看完整回答
反對 回復 2023-02-07
?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

查看<form>頁面源代碼中的標記?;蛘吣梢詸z查網絡選項卡以獲取每個字段的名稱值的發布請求。正確的字段名稱是usrpwd。

http://img1.sycdn.imooc.com//63e1bcae00019f6c13680332.jpg

所以基本上改變這行代碼:

login_data=dict(username=usr,password=pwd)

login_data=dict(usr=usr,pwd=pwd)


查看完整回答
反對 回復 2023-02-07
  • 2 回答
  • 0 關注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號