Итак, я недавно начал тестировать селен для некоторых личных проектов, и одна проблема, с которой я столкнулся, была заблокирована на некоторых сайтах из-за тестов recaptcha v3. Я провел еще несколько исследований, нашел демо recaptcha v3, провел некоторое тестирование и в итоге написал следующее:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from webdriver_manager.chrome import ChromeDriverManager
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument("--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36");
driver = webdriver.Chrome(options=options, executable_path=ChromeDriverManager().install())
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
"""
})
driver.get("https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php")
WebDriverWait(driver, 10).until(EC.title_contains("Index"))
Я рассмотрел различные вопросы о переполнении стека, включая следующие:
Selenium webdriver: изменение флага navigator.webdriver для предотвращения обнаружения селена
Может ли веб-сайт обнаруживать, когда вы используете селен с хроматографом?
Как это сделать recaptcha 3 знаете, что я использую селен / хромедрайвер?
и более
Хотя добавленные аргументы помогают улучшить показатель recaptcha v3, он все еще крайне противоречив. Примерно в половине случаев я получаю проходной балл 0,7, а в другой половине - неудачный балл 0,1.
Пожалуйста, помогите мне улучшить мои оценки в рекапче и последовательно передавать
РЕДАКТИРОВАТЬ 1: Вход в учетную запись Google в экземпляре chrome часто меняет результаты демонстрации Тем не менее, все еще не полностью предотвратить неудачные оценки