Python-Konsolenprotokolle fortlaufend auf einer Webseite anzuzeigen

Um Python-Konsolenprotokolle fortlaufend auf einer Webseite anzuzeigen, kannst du WebSocket verwenden, um Echtzeitkommunikation zwischen dem Server und der Webseite zu ermöglichen. Hier ist ein einfaches Beispiel mit Flask und Flask-SocketIO:

  1. Installiere Flask und Flask-SocketIO:
pip install Flask Flask-SocketIO
  1. Erstelle eine Flask-Anwendung mit SocketIO:
from flask import Flask, render_template
from flask_socketio import SocketIO, emit
import time
import threading

app = Flask(__name__)
socketio = SocketIO(app)

# Simuliere Protokolldaten
def simulate_logs():
    while True:
        time.sleep(2)
        log_data = "Neues Protokoll: {}".format(time.ctime())
        socketio.emit('log_update', {'data': log_data}, namespace='/logs')

# Starte den Thread für die Protokollsimulation
log_thread = threading.Thread(target=simulate_logs)
log_thread.start()

@app.route('/')
def index():
    return render_template('index_logs.html')

if __name__ == '__main__':
    socketio.run(app)
  1. Erstelle eine HTML-Datei (templates/index_logs.html), um die Protokolldaten anzuzeigen:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Protokollanzeige</title>
</head>
<body>
    <h1>Python-Konsolenprotokoll:</h1>
    <ul id="log-list"></ul>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.js"></script>
    <script>
        var socket = io.connect('http://' + document.domain + ':' + location.port + '/logs');

        socket.on('log_update', function(data) {
            var logList = document.getElementById('log-list');
            var listItem = document.createElement('li');
            listItem.appendChild(document.createTextNode(data.data));
            logList.appendChild(listItem);
        });
    </script>
</body>
</html>
  1. Führe deine Flask-Anwendung aus:
python deine_flask_anwendung.py

Besuche dann http://localhost:5000/ in deinem Webbrowser, um die fortlaufenden Protokolldaten von der Konsole auf der Webseite anzuzeigen. Beachte, dass dies ein einfaches Beispiel ist, und du es möglicherweise an deine spezifischen Anforderungen anpassen musst.

Was this helpful?

0 / 0

Schreibe einen Kommentar 0

Your email address will not be published. Required fields are marked *


Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.