![](/img/trans.png)
[英]How can I bypass the Google CAPTCHA with Selenium and Python?
[英]Missing __RequestVerificationToken to bypass google captcha with external solver
我正在嘗試抓取一些需要解決驗證碼登錄問題的網站,我發現這樣做的最好方法是使用外部服務,例如https://anti-captcha.com/ ,解決驗證碼的其他站點,並發回哈希值以驗證結果。
與文檔中一樣,該過程是:
問題是我需要發出的實際請求除了該值之外還需要另外兩個值:
* __RequestVerificationToken: This one appears on the login page:
但是通過登錄請求發送的值有所不同,因此中間缺少一些工作
* RecaptchaToken: There is no trace of this value in the login site, I'm suspecting it may be generated in the back end as an additional verification step, but I have not found any information about it.
我對此過程的最后一個擔心是,反驗證碼服務似乎正在解決一些通用的驗證碼,與我所看到的不一樣,雖然不確定這是否是實際問題。
我相信您正在談論reCAPTCHA v2,它要求用戶選擇其中包含某些對象的某些圖像。
在用戶解決了Recaptcha圖像難題后,根據文檔 ,他單擊“驗證”,這會將發帖請求發送到google api,並發送到以下網址: https : //www.google.com/recaptcha/api/site與用戶驗證對謎題的響應-編碼的ofc-並獲得一個響應,稱為“ g-recaptcha-response”,用於識別用戶對謎題的響應/解決方案是否正確。
因此,主要是標准的recaptcha v2,僅需要1個令牌即可驗證用戶響應,但這不是您在此處面臨的情況, 您所面臨的是一個自定義實現 ,該實現的目的是尤其要使不需要的參與者更難抓取或爬網這些網站。
他們開發了2個額外的令牌 ,這些令牌是唯一生成的,並注入到顯示驗證碼難題的頁面中,並且通過發送這些額外的令牌,他們確保“ g-recaptcha-response”來自用戶已經在同一頁面上在他的瀏覽器中加載。
您需要在要訪問的同一頁面中注入此api的g-recaptcha-response,以為您解決recaptcha,然后模擬與該頁面的完整用戶交互。
我建議您使用selenium ,它將幫助您自動執行所有用戶操作,並將所需的一切注入到頁面DOM中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.