Spaces:
Paused
Paused
| from flask import Flask, request, jsonify, send_from_directory | |
| import os | |
| import psutil | |
| import time | |
| import datetime | |
| app = Flask(__name__) | |
| # Define the path to static files | |
| static_dir = os.path.join(os.path.dirname(os.path.abspath(__file__))) | |
| def css(filename): | |
| return send_from_directory(os.path.join(static_dir, 'css'), filename) | |
| def js(filename): | |
| return send_from_directory(os.path.join(static_dir, 'js'), filename) | |
| def img(filename): | |
| return send_from_directory(os.path.join(static_dir, 'img'), filename) | |
| def index(): | |
| return send_from_directory(static_dir, 'index.html') | |
| def ai(): | |
| return send_from_directory(os.path.join(static_dir, 'views'), 'ai.html') | |
| def info(): | |
| ip = request.remote_addr | |
| current_time = datetime.datetime.now().strftime("%H:%M:%S") | |
| return jsonify({'ip': ip, 'current_time': current_time}) | |
| # Define the visitor count routes | |
| visitor_count = 0 | |
| visitor_today = 0 | |
| last_update_date = datetime.datetime.now().date() | |
| def update_visitor_counts(): | |
| global visitor_count, visitor_today, last_update_date | |
| allowed_paths = ['/ai', '/api', '/tool'] | |
| if request.path.startswith(tuple(allowed_paths)): | |
| current_date = datetime.datetime.now().date() | |
| if current_date != last_update_date: | |
| visitor_today = 0 | |
| last_update_date = current_date | |
| visitor_count += 1 | |
| visitor_today += 1 | |
| def count(): | |
| return jsonify({'visitor_count': visitor_count, 'visitor_today': visitor_today}) | |
| # Define the status route | |
| def status(): | |
| uptime_seconds = int(time.time() - psutil.boot_time()) | |
| uptime = str(datetime.timedelta(seconds=uptime_seconds)) | |
| memory_free = psutil.virtual_memory().available | |
| memory_total = psutil.virtual_memory().total | |
| return jsonify({'runtime': uptime, 'memory': f'{memory_free} / {memory_total}'}) | |
| # Handle 404 errors | |
| def page_not_found(e): | |
| return send_from_directory(static_dir, '404.html'), 404 | |
| if __name__ == "__main__": | |
| app.run(host="0.0.0.0", port=7860, debug=True) |