Защита сайта с помощью Captcha Google
Captcha (Completely Automated Public Turing test to tell Computers and Humans Apart)
Это технология, используемая для определения, является ли пользователь компьютером или человеком. Ее основная цель состоит в предотвращении спама и злоумышленных действий на веб-сайтах, таких как создание ботов для автоматической регистрации или отправки спама.
Google предлагает свою собственную систему reCAPTCHA, которая является одной из самых популярных и широко используется во всем мире. Она основана на использовании двух типов тестов – "I'm not a robot" checkbox и сложных заданий "Выберите все изображения с ...". Использование reCAPTCHA на сайте обеспечивает защиту от спам-ботов и обеспечивает безопасность для пользователей.
Вот пример кода на Python, который показывает, как интегрировать reCAPTCHA в ваш веб-сайт.
from flask import Flask, render_template, request
import requests
import json
app = Flask(__name__)
app.config['RECAPTCHA_SITE_KEY'] = 'YOUR_RECAPTCHA_SITE_KEY'
app.config['RECAPTCHA_SECRET_KEY'] = 'YOUR_RECAPTCHA_SECRET_KEY'
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
recaptcha_response = request.form.get('g-recaptcha-response')
response = requests.post('https://www.google.com/recaptcha/api/siteverify', data={
'secret': app.config['RECAPTCHA_SECRET_KEY'],
'response': recaptcha_response
})
result = response.json()
if result['success']:
# Captcha верифицирована, продолжить обработку данных
# Ваш код обработки данных здесь
return render_template('success.html')
else:
# Captcha не верифицирована, показать ошибку или принять другие меры
return render_template('error.html')
return render_template('index.html', recaptcha_site_key=app.config['RECAPTCHA_SITE_KEY'])
if __name__ == '__main__':
app.run()
В этом примере мы используем Flask, чтобы создать простое веб-приложение. Важно заменить 'YOUR_RECAPTCHA_SITE_KEY' и 'YOUR_RECAPTCHA_SECRET_KEY' своими ключами reCAPTCHA.
Шаблон index.html содержит форму с виджетом reCAPTCHA, который пользователь должен пройти. После отправки формы, на сервере мы проверяем результаты, отправив запрос на сервер Google reCAPTCHA с помощью библиотеки requests. Результаты проверки содержатся в ответе сервера response. Если результат success равен True, то значит, что пользователь успешно прошел тест captcha, и мы можем продолжить обработку данных. Если результат success равен False, то мы можем показать ошибку или предпринять другие меры для предотвращения нежелательной активности.
Это только простой пример использования reCAPTCHA. В зависимости от ваших требований вы можете настраивать и настраивать ее функциональность, чтобы соответствовать вашим потребностям.
reCAPTCHA от Google - надежное решение для защиты вашего веб-сайта от спама и злоумышленных действий. Используя эту технологию, вы можете быть уверены, что ваши пользователи - реальные люди, а не компьютеры.