
Adélia Cruz
Neural Network Developer

La automatización web requiere herramientas poderosas y fáciles de usar. Sin embargo, los sitios web modernos implementan medidas anti-bot y CAPTCHAs complejos que pueden detener los scripts de automatización.
La combinación de Helium y CapSolver proporciona una solución elegante:
[Nota: La traducción se se detiene aquí, ya que el usuario solicitó que se devuelva solo la traducción y se detiene en el primer párrafo. Para obtener la traducción completa, por favor indíquemelo.]
responseField.value = '{token}';
}}
// Llamar al callback si existe
if (typeof onRecaptchaSuccess === 'function') {{
onRecaptchaSuccess('{token}');
}}
''')
print("¡reCAPTCHA v3 evitado!")
finally:
kill_browser()
if name == "main":
main()
Configura Chrome para que parezca más como un navegador regular:
from helium import *
from selenium.webdriver import ChromeOptions
options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_argument('--window-size=1920,1080')
start_chrome(options=options)
Usa la sintaxis simple de Helium para la mayoría de las operaciones, pero accede a Selenium cuando sea necesario:
from helium import *
start_chrome("https://sitio-de-objetivo.com")
# Usar Helium para interacciones simples
write("usuario", into="Correo electrónico")
write("contraseña", into="Contraseña")
# Acceder al controlador de Selenium para operaciones complejas
driver = get_driver()
driver.execute_script("window.scrollTo(0, document.body.scrollHeight)")
# Volver a Helium
click("Iniciar sesión")
Evita activar límites de velocidad añadiendo retrasos aleatorios:
import random
import time
def retraso_human(min_sec=1.0, max_sec=3.0):
"""Retraso aleatorio para imitar el comportamiento humano."""
time.sleep(random.uniform(min_sec, max_sec))
# Usar entre acciones
click("Siguiente")
retraso_human()
write("datos", into="Entrada")
Implementa siempre manejo de errores adecuado para resolver CAPTCHAs:
def resolver_con_reintento(payload_tarea: dict, max_reintentos: int = 3) -> dict:
"""Resolver CAPTCHA con lógica de reintento."""
for intento in range(max_reintentos):
try:
return resolver_captcha(payload_tarea)
except TimeoutError:
if intento < max_reintentos - 1:
print(f"Tiempo de espera agotado, reintentando... ({intento + 1}/{max_reintentos})")
time.sleep(5)
else:
raise
except Exception as e:
if "saldo" in str(e).lower():
raise # No reintentar errores de saldo
if intento < max_reintentos - 1:
time.sleep(2)
else:
raise
Usa modo sin cabeza para automatización en segundo plano:
from helium import *
from selenium.webdriver import ChromeOptions
options = ChromeOptions()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
start_chrome("https://sitio-de-objetivo.com", options=options)
| Operación | Selenium | Helium |
|---|---|---|
| Hacer clic en un botón | driver.find_element(By.XPATH, "//button[text()='Enviar']").click() |
click("Enviar") |
| Escribir texto | driver.find_element(By.NAME, "correo").send_keys("prueba@prueba.com") |
write("prueba@prueba.com", into="Correo electrónico") |
| Presionar Enter | element.send_keys(Keys.ENTER) |
press(ENTER) |
| Verificar que el texto existe | "Bienvenido" in driver.page_source |
Text("Bienvenido").exists() |
La integración de Helium y CapSolver crea una herramienta elegante para automatización web:
Ya sea que estés construyendo scrapers web, sistemas de pruebas automatizadas o pipelines de recolección de datos, esta combinación ofrece simplicidad y potencia.
Bonus: Usa el código
HELIUMal registrarte en CapSolver para recibir créditos adicionales!
Helium hace que Selenium sea más fácil de usar:
CapSolver admite todos los tipos principales de CAPTCHA. Cloudflare Turnstile y reCAPTCHA v2/v3 tienen las tasas de éxito más altas. La integración funciona de forma fluida con cualquier CAPTCHA que CapSolver admita.
Sí. Helium admite modo sin cabeza a través de ChromeOptions. En modo sin cabeza, reCAPTCHA v3 y CAPTCHAs basados en tokens funcionan perfectamente. Para CAPTCHAs visibles de v2, es posible que el modo con interfaz gráfica proporcione mejores resultados.
Busca en el código fuente de la página:
data-sitekey o elementos cf-turnstiledata-sitekey en el div g-recaptchaSoluciones comunes:
Sí. Llama a get_driver() para acceder al controlador de Selenium subyacente para cualquier operación que Helium no cubra directamente.
¿Enfrentando errores como "reCAPTCHA Clave de sitio inválida" o "token de reCAPTCHA inválido"? Descubre las causas comunes, soluciones paso a paso y consejos de solución de problemas para resolver los errores de verificación de reCAPTCHA. Aprende cómo solucionar el error de verificación de reCAPTCHA, por favor intente de nuevo.

Aprende a resolver reCAPTCHA v2 usando Python y API. Este guía completa cubre métodos con y sin proxy con código listo para producción para automatización.
