gpt4 book ai didi

python - 如何使用 Selenium 和 Python 与 reCAPTCHA 音频元素交互

转载 作者:行者123 更新时间:2023-12-01 06:49:43 24 4
gpt4 key购买 nike

我想,点击按钮通过音频解析验证码,但是selenium没有检测到指定的“id”。

browser.get("https://www.google.com/recaptcha/api2/demo")
mainWin = browser.current_window_handle
iframe = browser.find_elements_by_tag_name("iframe")[0]
browser.switch_to_frame(iframe)
CheckBox = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID ,"recaptcha-anchor"))).click()
sleep(4)
audio = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID ,"recaptcha-audio-button"))).click()

最佳答案

click()按钮上通过音频解析验证码,因为所需的元素位于 <iframe> 内所以你必须:

  • 引发WebDriverWait以使所需的框架可用并切换到它

  • 引发WebDriverWait以使所需的元素可点击

  • 您可以使用以下 Locator Strategies :

  • 代码块:

    from selenium import webdriver
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC

    options = webdriver.ChromeOptions()
    options.add_argument("start-maximized")
    options.add_experimental_option("excludeSwitches", ["enable-automation"])
    options.add_experimental_option('useAutomationExtension', False)
    driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
    driver.get("https://www.google.com/recaptcha/api2/demo")
    WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.CSS_SELECTOR,"iframe[src^='https://www.google.com/recaptcha/api2/anchor']")))
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "span#recaptcha-anchor"))).click()
    driver.switch_to.default_content()
    WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.CSS_SELECTOR,"iframe[title='recaptcha challenge']")))
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button#recaptcha-audio-button"))).click()
  • 浏览器快照:

audio_captcha

<小时/>

引用

Ways to deal with #document under iframe

<小时/>

片尾

您可以在以下位置找到一些相关讨论:

关于python - 如何使用 Selenium 和 Python 与 reCAPTCHA 音频元素交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59077053/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com