# This depends on `geckodriver`. from flask import Flask, render_template_string, request, redirect, url_for from selenium import webdriver from selenium.webdriver.firefox.options import Options import threading app = Flask(__name__) # Start browser in kiosk mode at server startup firefox_options = Options() firefox_options.add_argument("--kiosk") # Kiosk mode, for fullscreen on some platforms # Store the browser globally browser = webdriver.Firefox(options=firefox_options) browser.get("about:blank") @app.route("/", methods=["GET", "POST"]) def index(): if request.method == "POST": url = request.form.get("url") if url: # Ensure URL has a protocol if not url.startswith(("http://", "https://")): url = "http://" + url # Use Selenium to navigate current tab to new URL browser.get(url) return redirect(url_for("index")) # Render a minimalist HTML page return render_template_string(""" KPR Media Naranja

Alimenta una URL

""") if __name__ == "__main__": # Run Flask in a thread so Selenium's browser stays alive threading.Thread(target=lambda: app.run(host="0.0.0.0", port=80, debug=False, use_reloader=False)).start()