>_ DevTrendsde

Sprache

Start

Sprachen

Bereiche

Frontend Backend Mobile DevOps AI / ML GameDev Sicherheit
HTML

So schlagen Entwickler Ticket-Schwarzhändler mit Python

3.599 Sterne

Habt ihr schon mal versucht, Konzertkarten für eine beliebte Band in den ersten Minuten des Vorverkaufs zu kaufen? Normalerweise läuft es so: Ihr aktualisiert die Seite um 10:00:00, und um 10:00:01 sind die Karten bereits weg. In China ist dieses Problem noch ausgeprägter, weshalb dort Projekte wie damaihelper entstanden sind. Es ist ein automatisiertes System zum Kauf von Tickets auf Plattformen wie Damai, Taopiaopiao und Binwandao.

Interessanterweise hat sich das Projekt von einem Quick-and-Dirty-Skript zu einer ausgewachsenen Anwendung mit Web-Interface und einfacher KI entwickelt. Ich bin zufällig darauf gestoßen und habe beschlossen herauszufinden, wie der moderne „Wettrüsten" im Ticket-Markt funktioniert.

Warum sich die Mühe machen, wenn es offizielle Apps gibt

Das Hauptproblem großer Plattformen sind Scalper mit ihren Bot-Farmen. Eine normale Person kann physisch nicht mit der Geschwindigkeit eines Skripts konkurrieren. Damaihelper ist ein Versuch, das Spielfeld für diejenigen zu ebnen, die sich mit Python und Selenium auskennen.

Das Projekt automatisiert den gesamten Zyklus: von der Authentifizierung und der Auswahl des gewünschten Bereichs bis hin zur Lösung von Captchas und der Erstellung einer Bestellung. Der Autor behauptet, dass die neueste Version mit integrierten „Agents" die Erfolgschancen um fast die Hälfte erhöht. Natürlich sind dies Marketingzahlen aus dem README, aber die technische Grundlage dahinter ist solide.

Was dieser Kraftprotz alles kann

Der Entwickler Guyungy hat unter der Haube ein ziemlich diverses Tech-Zoo zusammengepackt. Hier ist, was mir aufgefallen ist:

  • Plattformübergreifende Unterstützung. Das Skript ist nicht an eine einzelne Plattform gebunden. Es kann mit den großen chinesischen Ticket-Aggregatoren zusammenarbeiten. Und die Architektur ist modular, sodass das Hinzufügen einer neuen Website nur eine Frage des Schreibens eines Plugins ist.
  • Umgehung von Schutzmechanismen. Statt Standard-Selenium verwendet der Autor modifizierte Automatisierungs-Stealth-Methoden. Dies hilft, Anti-Fraud-Systeme zu täuschen, die verdächtige Aktivitäten in einem regulären, von WebDriver gesteuerten Browser erkennen.
  • Bildverarbeitung. Die Bibliotheken Pillow und pytesseract sind hier nicht nur zur Schau. Sie werden für die Erkennung einfacher Captchas benötigt. Für komplexere Fälle erwähnen die neuesten Updates die Verwendung von KI-Algorithmen.
  • Einfacher Start. Wenn man früher mit der Konsole hantieren musste, gibt es jetzt ein GUI in Python und sogar ein Web-Panel. Ihr könnt einen Server lokal starten und den Prozess über einen Browser verwalten.

Web UI Dashboard

Technischer Stack und Architektur

Das Projekt ist hauptsächlich in Python geschrieben. Für die Browser-Automatisierung wird Selenium in Version 4.x verwendet. Um das Skript genau in der Sekunde des Ticketverkaufsstarts auszulösen, kommt APScheduler zum Einsatz.

Die Zeitverwaltung ist interessant organisiert. Die Konfigurationen enthalten NTP-Zeitsynchronisierungseinstellungen. Im Kampf um Tickets zählt jede Millisekunde, und wenn die Systemuhr eures Computers auch nur eine halbe Sekunde hinter dem Server der Plattform liegt, habt ihr verloren.

Die Ordnerstruktur wirkt logisch:

  • ticket_script.py — hier befindet sich die Kernlogik für die Interaktion mit den Websites.
  • GUI.py — das Interface für diejenigen, die das Terminal nicht mögen.
  • config/ — der Einstellungen-Ordner, in dem Kontodaten und Sitzplatzpräferenzen gespeichert werden.
  • logs/ — eine kritisch wichtige Sache zum Debuggen, wenn während einer Ticketveröffentlichung etwas schief geht.

Wie es in der Praxis funktioniert

Um dieses Ding auszuführen, benötigt ihr Python 3.8+ und Google Chrome installiert. Der Prozess ist Standard: Klonen Sie das Repository, installieren Sie Abhängigkeiten über pip.

pip install -r requirements.txt

Um das Hauptszenario auszuführen, verwendet ihr den Befehl python ticket_script.py. Und wenn ihr ein hübsches Interface wollt — python GUI.py.

Web UI Running

Innerhalb des Web-Interfaces könnt ihr alles konfigurieren: von der Anzahl der Tickets bis zu bestimmten Zuschauernamen (in China sind Käufe oft an Personalausweise gebunden). Es gibt sogar eine Option zur Nutzung von Proxy-Servern, um IP-Sperren zu vermeiden, falls ihr das Skript in zehn Threads ausführen wollt.

Lohnt es sich, es zu versuchen

Ich werde ehrlich sein: Das Projekt ist Nische und auf den chinesischen Markt zugeschnitten. Wenn ihr davon träumt, ein Konzert in Peking zu besuchen — das ist euer bester Freund. Aber auch wenn nicht, ist damaihelper als Tutorial zum Erstellen komplexer Bots mit Selenium interessant.

Das Logging ist hier gut implementiert, und es gibt Beispiele, wie man mit dynamischen Seitenelementen umgeht und wie man ein komplexes Skript in eine benutzerfreundliche Hülle für normale Benutzer verpackt.

Der einzige Nachteil ist, dass die Dokumentation auf Chinesisch ist. Aber der Code ist transparent genug, und moderne Übersetzer bewältigen die Kommentare problemlos. Ansonsten ist es ein großartiges Beispiel dafür, wie Enthusiasten ein alltägliches Problem mit Code lösen.

Die wichtigste Erinnerung ist die ethische Seite — solche Tools sind für den persönlichen Gebrauch gedacht. Ihre Verwendung für industriellen Ticket-Scalping ist nicht nur moralisch fragwürdig, sondern kann auch zu Kontosperrungen führen. Letztendlich ist es nur Technologie, und wie ihr sie nutzt, liegt bei euch.

Ähnliche Projekte