Use Flask-NoAI for AI blocking.

Signed-off-by: Ari Archer <ari@ari.lt>
This commit is contained in:
Arija A. 2025-01-02 11:51:11 +02:00
parent cc08a0f210
commit b9d8c51867
WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS.
GPG key ID: A50D5B4B599AF8A2
2 changed files with 4 additions and 34 deletions

View file

@ -11,3 +11,4 @@ web-mini
flask-limiter flask-limiter
flask-ishuman flask-ishuman
pymemcache pymemcache
flask-noai

View file

@ -13,6 +13,7 @@ from typing import Any
import flask import flask
import web_mini import web_mini
from werkzeug.middleware.proxy_fix import ProxyFix from werkzeug.middleware.proxy_fix import ProxyFix
from flask_noai import noai
from . import util from . import util
@ -35,39 +36,7 @@ def assign_http(app: flask.Flask) -> flask.Flask:
robots: str = ( robots: str = (
f"""User-agent: * f"""User-agent: *
Sitemap: {app.config['PREFERRED_URL_SCHEME']}://{app.config['DOMAIN']}/sitemap.xml Sitemap: {app.config['PREFERRED_URL_SCHEME']}://{app.config['DOMAIN']}/sitemap.xml
Disallow: /vote/*/* Disallow: /vote/*/*"""
# We are not slaves for machines.
User-agent: Amazonbot
User-agent: anthropic-ai
User-agent: Applebot-Extended
User-agent: Bytespider
User-agent: CCBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-Web
User-agent: cohere-ai
User-agent: Diffbot
User-agent: FacebookBot
User-agent: facebookexternalhit
User-agent: FriendlyCrawler
User-agent: Google-Extended
User-agent: GPTBot
User-agent: ICC-Crawler
User-agent: ImagesiftBot
User-agent: img2dataset
User-agent: meta-externalagent
User-agent: OAI-SearchBot
User-agent: Omgili
User-agent: Omgilibot
User-agent: PerplexityBot
User-agent: PetalBot
User-agent: Scrapy
User-agent: Timpibot
User-agent: VelenPublicWebCrawler
User-agent: YouBot
Disallow: /"""
) )
return flask.Response(robots, mimetype="text/plain") return flask.Response(robots, mimetype="text/plain")
@ -210,4 +179,4 @@ def create_app(name: str) -> flask.Flask:
"b64encode": b64encode, "b64encode": b64encode,
} }
return assign_http(app) return noai(assign_http(app))