我正試圖用python請求登錄這個網站santillanaconnect.com,問題是我需要獲得g-Recaptcha-Response
的值才能登錄(除其他外,這些都不是問題)。如果我檢查元素并搜索g-Recaptcha-Response
,那么我將得到:
<input type="hidden" id="g-Recaptcha-Response" name="g-Recaptcha-Response" value="long string">
我試圖發出一個get
請求,將值保存在某個變量中,這樣我就可以用該令牌發出一個post
請求。問題是,當我試圖從響應的html中獲取g-Recaptcha-Response
的值時,該值沒有顯示,我已經嘗試添加標頭(因為可能它不會顯示,因為python請求User-Agent被列入黑名單/不常見),但它仍然不起作用
import requests
url = "https://www.santillanaconnect.com/Account/Login/?wtrealm=http%3A%2F%2Flms30.santillanacompartir.com%2Flogin%2Fcompartir%2F&wreply=https%3A%2F%2Flms30.santillanacompartir.com%2Flogin%2Fsso%2Floginconnect"
headers = {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "es-ES,es;q=0.9",
"Dnt": "1",
"Upgrade-Insecure-Requests": "1",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57"
}
with requests.Session() as s:
r = s.get(url, headers=headers)
print (r.text)
https://security.stackexchange.com/questions/238333/how-can-i-bypass-recaptcha-while-using-python-requests
“你不能繞過recaptcha,除非@schroeder說,網站上有一個弱點或選項,你可以繞過它。你可能需要做一些實驗來看看是否是這樣。
更精確的解決方案包括多個請求,以及對其他網站的請求。首先發出一個請求,使recaptcha出現。然后獲取接收到的信息并通過python向re-captcha第三方解決服務發送一個web請求,該服務接受來自在線請求的recaptcha問題數據。然后從他們那里得到的答案,通過python將其作為請求發送回it部門對recaptcha問題的回答。這樣,您就可以通過python發送請求來解決recaptchas問題。hYou仍然沒有繞過,但是您正在通過python發送請求以通過recaptcha。
python的另一個解決方案可能能夠解決recaptcha,并發送請求以便傳遞recaptcha。基本上,當您解決recaptcha時,您的結果將通過POST請求發送。雖然不是100%回答你的問題,但它確實涉及通過python發送請求。
然而,使用python解決recaptcha需要大量的機器學習、精確的圖像識別和人工智能編程知識,其中大多數可能還沒有達到100%的標準,才能成功地完成每一個驗證碼。此外,recaptcha的設計也使得機器人很難解決“Amol Soneji”