Ein Analysetool zur Untersuchung der Entstehung von Hassreden, Desinformation und interessanten Narrativen auf der Chat-Plattform Telegram. Bitte verwenden Sie dieses Tool mit Vorsicht, da es weder über eine Inhaltsmoderation noch über eine Filterung verfügt. Sie sind für den Inhalt verantwortlich, der exportiert werden kann.
Kurz gesagt: Mit diesem Tool können Sie alle Kanäle, denen Sie folgen, mit einer Liste von Schlüsselwörtern/Phrasen durchsuchen und alle passenden Ergebnisse in verschiedenen Formaten mit Diagrammvisualisierungen zurückgeben. Es lädt optional auch die Medien herunter und kann somit als Mediensuchmaschine verwendet werden (derzeit einige Fehler mit dieser Funktion – nicht als umfassendes Mediensuchtool verwenden).
Screenshot eines Tools in Aktion, das Hassreden während der russischen Invasion in der Ukraine untersucht
Hauptmerkmale
Dieses Tool wurde für die Zusammenarbeit mit Sockenpuppen entwickelt, die vielen Kanälen zu einem bestimmten Thema folgen.
Sie können Ihre API-Details ändern, um andere Konten zu verwenden, indem Sie die Datei api_values.txt bearbeiten.
Das Tool ist so konzipiert, dass es wie Google Trends funktioniert und das tägliche Volumen an Schlüsselbegriffen anzeigt und im Zeitverlauf darstellt.
Mit der Datumsfilterung können Sie eine Suche auf einen kürzeren Zeitraum eingrenzen. Wenn das Feld leer bleibt, wird es automatisch auf den maximalen Datenbereich skaliert.
Das Tool nutzt die Telegram-Suche, was bedeutet, dass es sich besonders gut für die Suche in russischer Sprache eignet und im Allgemeinen gut mit Wortendungen umgeht.
Erstellt für jeden Schlüsselbegriff individuelle Diagramme.
Erstellt ein aggregiertes Diagramm, das alle Schlüsselbegriffe einer Suche zum Vergleich in demselben Diagramm anzeigt.
Erstellt ein Berichts-PDF, das die Diagramme zeigt und den vollständigen Code für die Datenprüfung und Beweisvalidierung ausdruckt.
Gibt eine TXT-Dateizusammenfassung mit allen wichtigen Statistiken aus, z. B. Ausführungsdatum, gesuchte Kanäle und relative Lautstärke pro Kanal.
Optionaler Medien-Download für Ergebnisse (dies verlängert die Zeit, die zum Ausführen des Tools benötigt wird, enorm (wie wirklich enorm))
Heruntergeladene Medien haben den Dateinamen „channelid_postid“, sodass das Original leicht zu finden ist.
Dieses Skript durchsucht Nachrichten, die bestimmte Suchbegriffe in Telegram-Kanälen enthalten, in denen der Benutzer Mitglied ist. Es exportiert die Suchergebnisse in den Formaten HTML und CSV, generiert einen Bericht und zeichnet die Nachrichtenanzahl pro Tag auf.
Es dient dazu, Trends bei Suchbegriffen zu überwachen, ähnlich wie Google Trends. Dies kann sehr nützlich sein, um das Auftreten von Hassreden oder Diskussionen/Erzählungen nach bestimmten Ereignissen zu erkennen.
In dieser aktuellen Version werden keine wesentlichen Anpassungen an den Daten vorgenommen. Beispielsweise zeigt die Grafik nicht die Häufigkeit von Begriffen an, die an die Häufigkeit aller Nachrichten angepasst ist. Dies bedeutet, dass weitere Analysen durchgeführt werden sollten, um sicherzustellen, dass ein starker Anstieg der Begriffe nicht durch einen starken Anstieg der allgemeinen Aktivität verwechselt wird. Aus diesem Grund sollte die Grafikausgabe als Hinweis auf die Notwendigkeit weiterer Forschung und statistischer Analyse betrachtet werden.
Beispielergebnis zur Untersuchung von Hassreden während der russischen Invasion in der Ukraine
Dieses Bild ist ein Beispielergebnis, das zeigt, wie die untersuchten Kanäle einen Anstieg bei der Verwendung bestimmter Begriffe verzeichneten.
Beispiel des generierten Berichts
Dieses Bild ist ein Beispielergebnis des Berichts, ein PDF-Dokument, das den Code umreißt und am Ende das Skript ausdruckt. Dies bedeutet, dass unabhängig von Änderungen oder der verwendeten Version des Skripts der genaue Vorgang überprüft werden kann.
Screenshot einiger der im TXT-Statistikbericht generierten Informationen
Dieses Tool wurde anhand von Suchbegriffen in englischer und russischer Sprache getestet.
WARNUNG: Dieses Tool verwendet Ihre Liste der verfolgten Gruppen als Liste, anhand derer es sucht. Es kann persönliche Chats/Gruppen umfassen. Im Interesse von OPSEC wird empfohlen, ein Brennerkonto zu verwenden und nur ermittlungsspezifischen Chats zu folgen.
Installation
Klonen Sie das tg-keyword-trends-Repository, indem Sie den folgenden Befehl in Ihrem Terminal oder Ihrer Eingabeaufforderung ausführen:
Navigieren Sie in das Verzeichnis tg-keyword-trends:
cd tg-keyword-trends
Installieren Sie die erforderlichen Python-Abhängigkeiten mit pip:
pip install -r requirements.txt
Merkmale
Die Grafik passt die Skalierung an die ältesten und neuesten Beiträge an.
CSV zur weiteren Verarbeitung generiert.
Zum Öffnen von Links generierte HTML-Datei.
Erstellt einen Bericht, der die wichtigsten Details des Scrapings dokumentiert (Datum, aufgerufene Kanäle usw.), um die Ergebnisse überprüfbar zu machen.
Medien-Download
Verwendung:
Fügen Sie die Suchbegriffe, einen pro Zeile, in eine TXT-Datei ein. Sie werden in Kürze aufgefordert, den Dateispeicherort einzugeben.
Stellen Sie sicher, dass Sie Ihre Telegram-API-Details bereit haben [https://my.telegram.org/auth]
Das Skript durchsucht alle Kanäle, in denen der Benutzer Mitglied ist.
Die Suchergebnisse werden als HTML- und CSV-Dateien in einen zeitgestempelten Ausgabeordner exportiert.
Das Skript generiert einen Bericht mit den Suchergebnissen für jeden Kanal.
Das Skript stellt die Nachrichtenanzahl pro Tag für jeden Suchbegriff in einem Diagramm dar und speichert es als Bild.
Funktionen:
Abrufen_api_details : API-Details aus „api_details.txt“ lesen.
check_search_terms_file : Suchbegriffe aus „search_terms.txt“ lesen oder den Benutzer zur Eingabe von Suchbegriffen auffordern.
create_output_directory : Erstellen Sie ein zeitgestempeltes Verzeichnis zum Speichern von Ausgabedateien.
print_colored : Text mit dem Colorama-Modul in der angegebenen Farbe drucken.
render_url : Generieren Sie HTML-Code für einen Hyperlink mithilfe einer URL und eines Nachrichtentexts.
generic_report : Erstellt einen Bericht mit Suchergebnissen für jeden Kanal.
plot_keyword_frequenz : Zeichnen Sie die Nachrichtenanzahl pro Tag für jeden Suchbegriff in einem Diagramm auf.
Tipps:
Aufgrund der Datumsfilterfunktion eignet sich dieses Tool auch gut als Telegram-Suchmaschine, die nach Datum gefilterte Ergebnisse ermöglicht. Führen Sie einfach die Suche im benötigten Datumsfenster aus und öffnen Sie die HTML-Ausgabedatei, um eine Liste der übereinstimmenden Nachrichten und deren Links zu erhalten.
Das Tool verarbeitet Zeitzonen automatisch und passt sich ihnen an. Seien Sie besonders vorsichtig, wenn Sie einen Abschnitt des Codes bearbeiten, der sich auf Zeit- und Datumsformate bezieht, da dies schwierig zu debuggen war.
Es wird empfohlen, für jedes Thema ein eigenes Telegram-Konto zu erstellen. Dadurch können Sie nur relevante Kanäle ansprechen und Rauschen entfernen.
Sie müssen nicht getrennt nach Substantiven im Singular und Plural suchen, da dies von der Telegram-Suche übernommen wird (im Allgemeinen für die englische und russische Sprache).
*Dieses Bild zeigt die Verwendung der verschiedenen Ortsnamen für „Bakmut“, einschließlich der alten sowjetischen Namen. Eine Verwendung dieses Tools könnte die Validierung der in der OSINT-Forschung verwendeten Suchbegriffe sein. Wie hier zu sehen ist, könnte man ihr Sammlungspotenzial einschränken, wenn sie nur den offiziellen aktuellen Namen der Stadt verwenden und nicht auch frühere und umstrittene Namen. *
Abhängigkeiten:
Pandas~=2.0.0
matplotlib~=3.7.1
Telethon~=1.28.2
colorama~=0,4,6
Kissen~=9.5.0
reportlab~=3.6.12
numpy~=1.24.2
pytz~=2023.3
tqdm~=4.65.0
Python-Version: Python 3.11 oder höher
TODO
Verhindern Sie, dass geöffnete Diagramm-PNGs verschwinden
Fehlerbehandlung zu Benutzerdatumseingaben hinzufügen
Machen Sie die Diagrammerstellung sowohl pro Term als auch aggregiert, um Skalierungsprobleme zu beseitigen
Alle Diagramme in den PDF-Bericht einfügen (getrennt vom TXT-Dateibericht)
Verwenden Sie den TXT-Bericht, um den PDF-Bericht mit Kontextdaten zu füllen.
Fügen Sie Asyncio-Optionen hinzu, um die Leistung zu optimieren – insbesondere beim Medien-Download.
bessere grafische Darstellung, z. B. prozentuale Nutzung im Zeitverlauf zur Anpassung an neue Kanäle oder Aktivitätsschübe (laufende Verbesserungen und neue Grafiken – schließen Sie dies niemals ab, sondern fügen Sie einfach weitere hinzu)
Stellen Sie sicher, dass das oben Genannte im Berichts-PDF enthalten ist
Auswahl des Zeitbereichs
benutzerdefinierte Kanalliste
Wordcloud-Generierung aller passenden Nachrichten, um zusätzlichen Kontext, Begriffe und Erkenntnisse zu extrahieren
Legen Sie die Möglichkeit fest, Begriffe in einer einzelnen Zeile im Diagramm zu gruppieren (z. B. Übersetzungen/Transliterationen).
Mögliche Funktion: Legen Sie den Standardspeicherort für alle heruntergeladenen Medien mit einer Listendatei der zuvor heruntergeladenen Medien fest, um Duplikate zu verhindern