From 262a95788533e793ce2a9f3e6076202bd75139b9 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Thu, 27 May 2021 11:12:09 -0500 Subject: [PATCH] Pass tags along in the age gate --- app.py | 30 +++++++++++++++++++++++++++--- requirements.txt | 11 +++++++++++ templates/age-gate.html | 1 + 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/app.py b/app.py index a151a12..10a7436 100644 --- a/app.py +++ b/app.py @@ -2,8 +2,9 @@ from flask import Flask, render_template, redirect, request from time import time from urllib.parse import urlparse, unquote from markdown2 import markdown +import requests import json -import os.path +from bs4 import BeautifulSoup app = Flask( __name__, @@ -22,8 +23,31 @@ def nightly(): @app.route('/agegate') def agegate(): - url = unquote(request.url.split("?to=")[1]) - return render_template("age-gate.html", url=url) + url = request.args.get("url", default=None) + + try: + if urlparse(url).netloc and urlparse(url).netloc[-9:] != "crux.sexy": + print("URL is not pointing at crux.sexy") + url = "https://crux.sexy/" + except: + url = "https://crux.sexy" + + try: + r = requests.get(url, cookies={"agegate": "true"}) + + soup = BeautifulSoup(r.text, "html5lib") + + headers = [] + + for item in soup.head.findAll("meta"): + if item.has_attr("name") and item["name"] == "viewport": + continue + if item.has_attr("content"): + headers.append(str(item)) + except: + headers = [] + + return render_template("age-gate.html", url=url, headers="\n".join(headers)) @app.route('/accept') def accept(): diff --git a/requirements.txt b/requirements.txt index a6d2d3a..7ea9a1a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,17 @@ +beautifulsoup4==4.9.3 +certifi==2020.12.5 +chardet==4.0.0 Click==7.0 Flask==1.1.1 +html5lib==1.1 +idna==2.10 itsdangerous==1.1.0 Jinja2==2.10.3 +markdown2==2.4.0 MarkupSafe==1.1.1 +requests==2.25.1 +six==1.16.0 +soupsieve==2.2.1 +urllib3==1.26.5 +webencodings==0.5.1 Werkzeug==0.16.0 diff --git a/templates/age-gate.html b/templates/age-gate.html index 45c01d9..9453720 100644 --- a/templates/age-gate.html +++ b/templates/age-gate.html @@ -3,6 +3,7 @@ Age Gate + {{headers|safe}}