Soziale Medien sind ein fest integrierter Bestandteil des menschlichen Lebens geworden. Sie produzieren Unmengen von Daten, die erschlossen und analysiert werden können. Hier setzt TWINT an — ein Web Scraper, mit dem man Tweets von Twitter-Nutzern einholen kann. Was ist das Besondere daran?
Einsatzmöglichkeiten
TWINT wurde in Python geschrieben, ist inzwischen in Version 2.1.1 erschienen und läuft unter der MIT-Lizenz. Dabei verwendet TWINT nicht wie viele andere Tools das API von Twitter, sondern die Suchoperatoren des Kurznachrichtendienstes. Die Tool-Entwickler begründen dieses Vorgehen damit, dass das Suchergebnis so nicht auf 3200 Tweets der Benutzer-Timeline beschränkt ist.
TWINT stellt spezielle Querys an Twitter, mit denen nach Tweets eines Benutzers gefragt werden kann. Es kann aber auch danach gefragt werden, wer z. B. seine Follower sind (mit twint -u username --followers
), welche Tweets E-Mails, Adressen oder Telefonnummern enthalten (twint -u username --email --phone
oder in welchen Tweets bestimmte Worte wie pineapple vorkommen (twint -u username -s pineapple
. All das findet ohne Authentifikation statt (man benötigt keinen Twitter Account).
Sogar Tweets von Usern, die einen Shadow Ban von Twitter erhalten haben, sind nicht vor TWINT sicher. Diese können über --profile-full
erschlossen werden, wenn TWINT via CLI eingesetzt wird. Alternativ kann TWINT auch als Modul aufgesetzt werden, dann erhält man die Tweets über --profile-full
.
Weitere Funktionen und Einsatzmöglichkeiten von TWINT kann man im WIKI des Projekts nachlesen.
Bedingungen und Installation
TWINT kann über Git,
git clone https://github.com/twintproject/twint.git
pip3 install -r requirements.txt
Pip (mit 2 möglichen Wegen),
pip3 install twint
pip3 install --user --upgrade -e git+https://github.com/twintproject/twint.git@origin/master#egg=twint
Oder über Pipenv installiert werden:
pipenv install -e git+https://github.com/twintproject/twint.git#egg=twint
Bevor man mit TWINT loslegen kann, sollten folgende Dinge bereits installiert sein:
- Python 3.6;
- aiohttp;
- aiodns;
- beautifulsoup4;
- cchardet;
- elasticsearch;
- pysocks;
- pandas (>=0.23.0);
- aiohttp_socks;
- schedule;
- geopy;
- fake-useragent
Wen die Neugier gepackt hat, kann sich das Projekt auf GitHub anschauen und einen Blick in das WIKI von TWINT werfen.