Зарегистрируйте учетную запись NextCaptcha: Перейдите на NextCaptcha и зарегистрируйтесь, чтобы получить свой ключ API.
Установите необходимые пакеты Python: Убедитесь, что у вас есть requests
установлен. Вы можете установить его с помощью pip, если у вас его еще нет:
pip install requests
Перейдите на страницу с reCAPTCHA.
Проверьте исходный код страницы: Щелкните правой кнопкой мыши по странице и выберите «Просмотреть» или «Просмотреть исходный код страницы».
Поиск ключа сайта: Ищите data-sitekey
атрибут в HTML. Это будет выглядеть примерно так:
<div class="g-recaptcha" data-sitekey="YOUR_SITE_KEY"></div>
Скопировать это YOUR_SITE_KEY
ценить.
Отправьте запрос в NextCaptcha для решения 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')
Опрос для решения:
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)
Объединяя все шаги, вот полный код:
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)