Regístrese para obtener una cuenta NextCaptcha: Vaya a NextCaptcha y regístrese para obtener su clave API.
Instalar los paquetes de Python necesarios: Asegúrese de tener requests
instalado. Puedes instalarlo usando pip si aún no lo tienes:
pip install requests
Navegar a la página con el reCAPTCHA.
Inspeccionar el código fuente de la página: Haga clic derecho en la página y seleccione “Inspeccionar” o “Ver código fuente de la página”.
Buscar la clave del sitio: Busca el data-sitekey
atributo en el HTML. Se verá algo como esto:
<div class="g-recaptcha" data-sitekey="YOUR_SITE_KEY"></div>
Copia esto YOUR_SITE_KEY
valor.
Envíe una solicitud a NextCaptcha para resolver el reCAPTCHA v3:
import requests
# Your NextCaptcha API key
API_KEY = 'YOUR_NextCAPTCHA_API_KEY'
# The URL of the page with the reCAPTCHA
url = 'URL_OF_THE_PAGE_WITH_RECAPTCHA'
# The site key for reCAPTCHA v3
site_key = 'YOUR_SITE_KEY'
# Requesting the reCAPTCHA solution
response = requests.post('https://api.nextcaptcha.com/createTask', data={
"clientKey": API_KEY,
"task": {
"type":"RecaptchaV3TaskProxyless",
"websiteURL":url,
"websiteKey":site_key
}
})
request_id = response.json().get('taskId')
Encuesta para la solución:
import time
solution = None
while solution is None:
time.sleep(1) # Wait a few seconds before checking again
response = requests.post('https://api.nextcaptcha.com/getTaskResult', data={
"clientKey": "api key",
"taskId": request_id
})
if response.json().get('errorId') == 0:
solution = response.json().get('solution')
# The reCAPTCHA token
recaptcha_token = solution["gRecaptchaResponse"]
print(f'reCAPTCHA token: {recaptcha_token}')
# URL where the form is submitted
form_submit_url = 'URL_TO_SUBMIT_FORM'
# Form data including the reCAPTCHA token
form_data = {
'some_form_field': 'value',
'g-recaptcha-response': recaptcha_token
}
# Submit the form
response = requests.post(form_submit_url, data=form_data)
print(response.text)
Combinando todos los pasos, aquí está el código completo:
import requests
import time
# Your NextCaptcha API key
API_KEY = 'YOUR_NextCAPTCHA_API_KEY'
# The URL of the page with the reCAPTCHA
url = 'URL_OF_THE_PAGE_WITH_RECAPTCHA'
# The site key for reCAPTCHA v3
site_key = 'YOUR_SITE_KEY'
# Requesting the reCAPTCHA solution
response = requests.post('https://api.nextcaptcha.com/createTask', data={
"clientKey": API_KEY,
"task": {
"type":"RecaptchaV3TaskProxyless",
"websiteURL":url,
"websiteKey":site_key
}
})
task_id = response.json().get('taskId')
solution = None
while solution is None:
time.sleep(1) # Wait a few seconds before checking again
response = requests.post('https://api.nextcaptcha.com/getTaskResult', data={
"clientKey": "api key",
"taskId": task_id
})
if response.json().get('errorId') == 0:
solution = response.json().get('solution')
# The reCAPTCHA token
recaptcha_token = solution["gRecaptchaResponse"]
print(f'reCAPTCHA token: {recaptcha_token}')
# URL where the form is submitted
form_submit_url = 'URL_TO_SUBMIT_FORM'
# Form data including the reCAPTCHA token
form_data = {
'some_form_field': 'value',
'g-recaptcha-response': recaptcha_token
}
# Submit the form
response = requests.post(form_submit_url, data=form_data)
print(response.text)