A hCaptcha extension for Flask based on flask-recaptcha
Project description
Flask-hCaptcha
A hCaptcha extension for Flask based on flask-recaptcha.
This repo is part of self-host video streaming project.
Install
pip install flask-hcaptcha
Usage
Implementation view.py
from flask import Flask
from flask_hcaptcha import hCaptcha
app = Flask(__name__)
hcaptcha = hCaptcha(app)
#or
hcaptcha = hCaptcha()
hcaptcha.init_app(app)
In your template: {{ hcaptcha }}
Inside of the form you want to protect, include the tag: {{ hcaptcha }}
It will insert the code automatically
<form method="post" action="/submit">
... your field
... your field
{{ hcaptcha }}
[submit button]
</form>
Verify the captcha
In the view that's going to validate the captcha
from flask import Flask
from flask_hcaptcha import hCaptcha
app = Flask(__name__)
hcaptcha = hCaptcha(app)
@route("/submit", methods=["POST"])
def submit():
if hcaptcha.verify():
# SUCCESS
pass
else:
# FAILED
pass
API
hCaptcha.init(app, site_key, secret_key, is_enabled=True)
hCaptcha.get_code()
Returns the HTML code to implement. But you can use {{ hcaptcha }} directly in your template
hCaptcha.verify()
Returns bool
In Template
Just include {{ hcaptcha }} wherever you want to show the hcaptcha
Config
Flask-hCaptcha is configured through the standard Flask config API. These are the available options:
HCAPTCHA_ENABLED: Bool - True by default, when False it will bypass validation
HCAPTCHA_SITE_KEY : Public key
HCAPTCHA_SECRET_KEY: Private key
HCAPTCHA_ENABLED = True
HCAPTCHA_SITE_KEY = ""
HCAPTCHA_SECRET_KEY = ""
Todo
- Support Invisible Captcha
- Support the use of Language Codes
(c) 2021 Knugi (originally ReCaptcha by Mardix 2015)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for Flask_hCaptcha-0.6.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06730085002359e1ac6dc4dc2bd69f124ebe521e54ad474107554e4a5ab11aef |
|
MD5 | beedb1195075cb67237da9eebd4010f0 |
|
BLAKE2b-256 | 509222e41ea9eb654e0fc682f0db90e4834ac9e0506aca9557f869aca37262ff |