j

 

from flask import Flask, request, render_template_string import sqlite3 import uuid app = Flask(__name__) # Initialize SQLite database def init_db(): conn = sqlite3.connect('tracking.db') cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS trackers ( id TEXT PRIMARY KEY, title TEXT, website TEXT )''') cursor.execute('''CREATE TABLE IF NOT EXISTS visits ( id INTEGER PRIMARY KEY AUTOINCREMENT, tracker_id TEXT, source TEXT, timestamp DATETIME DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY(tracker_id) REFERENCES trackers(id) )''') conn.commit() conn.close() # Function to generate the tracking code def generate_tracking_code(tracker_id): return f""" """ @app.route('/') def index(): return render_template_string('''

Tracking Code Generator







''') @app.route('/generate', methods=['POST']) def generate(): title = request.form['title'] website = request.form['website'] tracker_id = str(uuid.uuid4()) # Save tracker info in database conn = sqlite3.connect('tracking.db') cursor = conn.cursor() cursor.execute('INSERT INTO trackers (id, title, website) VALUES (?, ?, ?)', (tracker_id, title, website)) conn.commit() conn.close() tracking_code = generate_tracking_code(tracker_id) return f"""

Tracking Code Generated

Copy and paste the following code into your website:


Generate Another Code """ @app.route('/track', methods=['POST']) def track(): data = request.json tracker_id = data.get('tracker_id') source = data.get('source') # Save visit data in database conn = sqlite3.connect('tracking.db') cursor = conn.cursor() cursor.execute('INSERT INTO visits (tracker_id, source) VALUES (?, ?)', (tracker_id, source)) conn.commit() conn.close() return '', 200 @app.route('/analytics/') def analytics(tracker_id): conn = sqlite3.connect('tracking.db') cursor = conn.cursor() cursor.execute('SELECT source, COUNT(*) as count FROM visits WHERE tracker_id = ? GROUP BY source', (tracker_id,)) data = cursor.fetchall() conn.close() analytics_html = '

Analytics

' analytics_html += '' for source, count in data: analytics_html += f'' analytics_html += '
SourceVisits
{source}{count}
' analytics_html += '
Back to Home' return analytics_html if __name__ == '__main__': init_db() app.run(debug=True)

Kommentare