Руководства
Поиск параметров Turnstile
Эта страница переведена с китайской версии машинным переводом и может содержать ошибки. Приоритет имеет китайская версия.
Для создания задачи Turnstile нужны websiteURL (адрес страницы, на которой появляется виджет проверки) и websiteKey (ключ сайта, обычно начинается с 0x). Сначала убедитесь, что это Turnstile, а не страница проверки Cloudflare; см. Как определить тип капчи.
websiteKey
Заголовок раздела «websiteKey»Способ 1: исходный код страницы. В инструментах разработчика (F12) откройте панель Elements и найдите data-sitekey:
<div class="cf-turnstile" data-sitekey="0x4AAAAAAAxxxxxxxxxxxxxx"></div>Способ 2: скрипты. Если виджет отрисовывается через JavaScript, на панели Sources щёлкните правой кнопкой мыши, выберите «Search in all files», найдите turnstile.render и посмотрите sitekey в параметрах:
turnstile.render('#container', { sitekey: '0x4AAAAAAAxxxxxxxxxxxxxx', callback: onDone });Способ 3: сетевые запросы. На панели Network найдите challenges.cloudflare.com: в адресе iframe с виджетом содержится ключ сайта, начинающийся с 0x.
websiteURL
Заголовок раздела «websiteURL»Укажите полный адрес страницы, на которой появляется виджет, например https://example.com/login.
action и cData (обычно не нужны)
Заголовок раздела «action и cData (обычно не нужны)»В подавляющем большинстве случаев они не нужны. Ищите их только тогда, когда вы уверены, что websiteKey и websiteURL указаны верно, а задача всё равно не проходит: посмотрите, есть ли action и cData в параметрах turnstile.render или на элементе виджета (на элементе это data-action и data-cdata):
turnstile.render('#container', { sitekey: '0x4AAAAAAAxxxxxxxxxxxxxx', action: 'login', cData: 'c0bd4b36-7419-4e18-83c6-378699f2a9a2' });Если они есть, при создании задачи передайте action в поле pageAction, а cData — в поле data; см. Turnstile.
Отправка токена
Заголовок раздела «Отправка токена»Когда задача выполнена, поместите token в скрытое поле формы с именем cf-turnstile-response (если страница использует turnstile.render с callback, вызовите этот callback и передайте ему токен), затем отправьте форму. В запросе отправки используйте в качестве User-Agent значение userAgent из результата.