undefined
Blog > Big Data > Post

Scraping Twitter und Sentimentanalyse mit Python

Thursday, October 27, 2022

Dies ist ein Anwendungsfall von Web Scraping Twitter für Sentimentanalyse. Lassen wir mit einem berühmten Mann beginnen. Er ist...Donald Trump.

Eigentlich bin ich kein großer Fan von Donald Trump. Genau gesagt, mag ich ihn überhaupt nicht. Aber er hat diese charismatische Sensationswirkung. Sein Name besetzt immer die meisten Zeitungen und sozialen Medien. Die Einstellung der Menschen zu ihm ist dramatisch und bilateral. Seine beschreibenden Worte sind entweder sehr positiv oder negativ. Diese sind perfekte Materialien für Web Scraping und Sentimentanalyse. Deshalb würde ich ihn als ein Beispiel nennen, um Ihnen anzuzeigen, wie man mit Web Scraping Tool seine Worte scrapen und analysieren kann.

 

 

Das Ziel des Workshops ist es, ein Web Scraping Tool zu verwenden, um Tweets über Donald Trump mit einem Web Crawler auszulesen und zu scrapen. Dann machen wir eine Sentimentanalyse mit Python und finden die öffentlichen Meinungen über diesen Präsidenten. Und wir haben schließlich die Daten mit Tableau Public visualisiert.

 

Lesen Sie bitte weiter:

1. Wenn Sie nicht wissen, wie Sie Inhalte/Kommentare in sozialen Medien scrapen.

2. Oder/Und wenn Sie Python erlernen aber nicht wissen, wie Sie es für die Sentimentanalyse verwenden.

 

Lassen wir mit Web Scraping bei der Verwendung von Octoparse beginnen. Vor dem Scraping sollen Sie zuerst die neueste Version von Octoparse herunterladen, und dann melden Sie sich mit den Anweisungen an. Nachdem Sie eingeloggt waren, eröffnen Sie einfach die vorgestellte Vorlage von Twitter.

 

 

Tweet-Datenextraktion im Web Scraper

  • Name

  • Veröffentlichungszeit

  • Inhalt

  • Bild-URL

  • Tweet-URL

  • Anzahl der Kommentare, Retweets und die Ähnliches

 

Geben Sie „Donald Trump“ in Parameterfeld ein, um den Crawler das Schlüsselwort mitzuteilen. Es ist so einfach, wie es aussieht. Ich bekam ungefähr 10k Tweets. Sie können so viele Tweets wie möglich scrapen. Nachdem Sie Tweets bekommen haben, exportieren Sie die Daten als Textfile und benennen Sie das File als „data.txt“.

 

 

Sentimentanalyse mit Python

Bevor Sie beginnen, stellen Sie bitte sicher, dass Sie Python und ein Texteditor auf Ihrem Computer installiert haben. Ich verwende Python 2.7 und Notepad++.

Dann analysieren wir die gescrapte Tweets mit zwei Meinungswortlisten. Sie können sie hier downloaden. Mit Big Data können Sie einfacher als früher die Sentimentanalyse machen. Diese beiden Listen enthalten positive und negative Wörter (Sentiment Wörter), die von Minqing Hu und Bing Liu aus einer Forschungsstudie über präsentierte Meinungswörter in sozialen Medien zusammengefasst werden.

Was wir hier machen wollen ist, von den Listen die Meinungswörter zu bekommen, zu den Tweets zurückzukehren und die Frequenz jedes Meinungswortes in den Tweets zu zählen. Endlich haben wir deshalb entsprechende Meinungswörter in Tweets und der Zählung zusammengefasst.

Zuerst erstellen Sie eine Positiv- und Negativliste mit zwei heruntergeladeten Wortlisten. Sie speichern alle Wörter, die aus den Textfiles analysiert werden.

Danach verarbeiten Sie Texte vor und ändern Sie die Daten, indem Sie alle Satzzeichen, Zeichen und Zahlen mit dem folgenden Code streichen:

# process the tweets

with open ('data.txt') as f:

txt = f.read ()

txt = re.sub ('[, \ . () ": ; !@#$%^&*\α] | \ ' s | \ ' ' , ' ' , txt)

word_list = txt.replace (' \n ', ' ') . replace (' ', ' ') . lower () . split (' ')

 

Die Daten bestanden deshalb nur aus markiert Wörter, was Analyse erleichtern lässt. Danach erstellen Sie drei Wörterbücher: word_count_dict, word_count_positive, und word_count_negative.

 

Dann definieren Sie jedes Wörterbuch. Wenn ein Meinungswort in Daten existiert, zählen Sie es, indem Sie den Wert von word_count_dict um „1“ erhöhen.

 

Nachdem alle Meinungswörter gezählt geworden sind, entscheiden Sie, ob ein Wort positiv oder negativ klingt. Wenn es ein positives Wort ist, erhöht word_count_positive seinen Wert um „1“, sonst bleibt das positive Wörterbuch derselbe Wert. Dementsprechend erhöht word_count_negative seinen Wert oder bleibt derselbe Wert. Wenn das Wort weder in der Positivliste noch in der Negativliste existiert, ist es ein Pass.

 

 

Polarität: Positiv vs. Negativ

Ich habe zusammen 5.352 negative Wörter und 3.894 positive Wörter bekommen, die Liste mit Ihrem ausgewählten Namen gespeichert, sie mit Tableau Public geöffnet und ein Bubble Chart erstellt. Wenn Sie nicht wissen, wie Sie ein Bubble Chart mit Tableau Public erstellen können, klicken Sie bitte hier.

Die Benutzung der positiven Wörter ist einseitig. Es werden nur 404 Arten von positiven Wörtern verwendet. Die häufigsten Wörter sind beispielsweise „lieben“, „großartig“ und „richtig“. Die meisten Wortwahlen sind grundlegend und umgangssprachlich, wie „wow“ und „cool“, während die Benutzung der negativen Wörter viel multilateraler ist. Im Vergleich dazu gibt es 809 Arten von negativen Wörtern. Die meisten davon sind formell und fortgeschritten. Dies sind die am häufigsten verwendeten, wie „illegal“, „Lügen“ und „Rassist“. Andere fortgeschrittene Wörter existieren auch, wie „Verbrecher“, „Agitation“ und „Heuchler“.

Die Wortwahl zeigt deutlich, dass das Bildungsniveau der Unterstützer niedriger als das der Nicht-Unterstützer ist. Donald Trump ist offensichtlich bei Twitter Nutzern nicht willkommen.

 

 

Zusammenfassung

In diesem Artikel haben wir darüber gesprochen, wie Sie Tweets auf Twitter mit Octoparse scrapen. Wir haben auch diskutiert, wie Sie Datentext vorverarbeiten und positive/negative Meinungswörter analysieren, die auf Twitter mit Python ausgedrückt werden. Für eine vollständige Version des Codes können Sie hier downloaden.

 

 

Autor*in: Das Octoparse Team

 

Quelle

1. https://medium.com/@datamonsters/text-preprocessing-in-python-steps-tools-and-examples-bf025f872908

2. https://www.cs.uic.edu/~liub/FBS/sentiment-analysis.html

3. https://github.com/jeffreybreen/twitter-sentiment-analysis-tutorial-201107/blob/master/data/opinion-lexicon-English/positive-words.txt

4. http://nohumanbeingisillegal.com/Home.html

Relative Artikel

Wie extrahiert man Daten aus Twitter ohne Kodierung

Top 5 Scraping Tools für Social Media 2022

Beste Web Crawler Services/Unternehmen in 2022

Diese Website verwendet Cookies um Ihnen ein besseres Internet-Erlebnis zu ermöglichen. Lesen Sie wie wir Cookies verwenden und Sie können sie kontrollieren, indem Sie auf Cookie-Einstellungen klicken. Wenn Sie die Website weiter nutzen, akzeptieren Sie unsere Verwendung von Cookies.
Akzeptieren Ablehnen