[問題] 以requests登入網站

看板Python作者 (樹枝擺擺)時間5年前 (2019/07/01 17:37), 5年前編輯推噓1(1011)
留言12則, 5人參與, 5年前最新討論串1/1
我遇到一個網站,一進入就會prompt,提醒需要輸入帳密, 我可以用selenium連上 https://username:password@xxxx.com.tw, 並取得我想要爬取的資料 但selenium實在太慢了,所以我想回歸原本使用requests+lxml, 卻無法使用 https://username:password@xxxx.com.tw 的方式登入, 會一直引發ConnectionError(err, request=request) 我想試著用requests.get(url,auth=(username,password)) 也一樣會引發ConnectionError 想請問像這類的網站是否可直接利用requests登入? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.111.96 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1561973826.A.9F5.html

07/01 20:09, 5年前 , 1F
當然可以
07/01 20:09, 1F

07/01 23:46, 5年前 , 2F
因為沒有具體範例 無法給建議
07/01 23:46, 2F

07/02 06:54, 5年前 , 3F
瞭解,謝謝
07/02 06:54, 3F

07/02 10:22, 5年前 , 4F
一個網站.....到底哪一個網站 這是請鬼拿藥單嗎?
07/02 10:22, 4F

07/02 16:21, 5年前 , 5F
這大概basic auth才會出現的連線方式,我也回當然可以,
07/02 16:21, 5F

07/02 16:21, 5年前 , 6F
也不算資訊不足啦
07/02 16:21, 6F
謝謝分享,我單純認為, 也許requests針對https://username:password@host會有通用的處理方法 加上網站不便提供,所以沒辦法進一步清楚 結果跟爬蟲怎麼爬一樣,這件事得見招拆招,證實這件事比我原先想的更複雜 先前試了網路上幾種方法都沒能成功,只好等日後技能點齊一點再來想辦法 但我還是學到了requests有解,但我功力不夠這件事, 至少方向出來了,謝謝分享 ※ 編輯: liquidbox (61.230.111.96 臺灣), 07/02/2019 17:51:48

07/04 00:36, 5年前 , 7F
用 selenium 發的請求是會帶瀏覽器 header 跟 cookie 或
07/04 00:36, 7F

07/04 00:36, 5年前 , 8F
有些表單需要的 csrf token等等 所以可以成功 建議你可
07/04 00:36, 8F

07/04 00:36, 5年前 , 9F
以觀察登入時帶了哪些參數 以及開f12看登入方式是走 pos
07/04 00:36, 9F

07/04 00:36, 5年前 , 10F
t back 還是 jwt或其他 都了解清楚後再想辦法用 request
07/04 00:36, 10F

07/04 00:36, 5年前 , 11F
模擬
07/04 00:36, 11F

07/04 00:37, 5年前 , 12F
另外登入通常是用 HTTP POST 不是 GET
07/04 00:37, 12F
原來如此,謝謝詳細說明, 我從這個方向去試試看,謝謝 ※ 編輯: liquidbox (36.224.143.114 臺灣), 07/04/2019 18:49:27
文章代碼(AID): #1T6TH2dr (Python)