Ich habe versucht, die Tweets von JAWS DAYS 2017 mit Python + ELK einfach zu visualisieren

Elasticsearch Als ich darüber nachdachte, verschiedene Dinge auszuprobieren, entschied ich mich, das Tweet-Protokoll von JAWS DAYS 2017 zu verwenden, das ich auch twitterte.

Annahme

  1. Python verwendet die 2.7-Serie
  2. ELK verwendet 5.2.2

Protokollsuche von Twitter

Ich habe den erstellten Quellcode hier eingefügt. Sie kann durch Eingabe des Zugriffsschlüssels verwendet werden. (Es ist erforderlich, die Registrierung für die Twitter-API als vorläufige Vorbereitung abzuschließen.)

https://github.com/kojiisd/TweetsSearch

import twitter
from twitter import Api
import sys
import os
import time
import json

reload(sys)
sys.setdefaultencoding('utf-8')
from collections import defaultdict

maxid = 0
search_word = "#XXXXXX"

api = Api(base_url="https://api.twitter.com/1.1",
          consumer_key='XXXXXXXX',
          consumer_secret='XXXXXXXX',
          access_token_key='XXXXXXXX',
          access_token_secret='XXXXXXXX')


count = 0
file = open(name='../data/result.json', mode='w')
found = api.GetSearch(term=search_word, count=100, lang="ja", result_type='mixed', until="yyyy-mm-dd")
while count < 3000:
    for result in found:

        file.write(str(result) + os.linesep)

        count += 1
        maxid = result.id
    found = api.GetSearch(term=search_word, count=100, result_type='mixed', max_id=maxid - 1)

file.close()
print "TweetsNum: " + str(count)

Versuchen Sie, mit dem Hashtag von JAWS DAYS 2017 zu suchen

{
    "created_at": "Sat Mar 11 04:57:29 +0000 2017", 
    "favorited": false, 
    "hashtags": [
        "jd2017_b", 
        "jawsdays"
    ], 
    "id": XXXXXXXXXXXXXXXXXX, 
    "lang": "ja", 
    "retweeted": false, 
    "source": "<a href="http://twitter.com" rel="nofollow">Twitter Web Client</a>", 
    "text": "Voll + stehend. Es ist wunderbar.#jd2017_b #jawsdays", 
    "truncated": false, 
    "user": {
        :
        :
        :
        "name": "Koji, 
        :
        :
        :
        "screen_name": "kojiisd", 
        :
        :
        :
    }
}

Für logstash wollte ich das Ergebnis sofort sehen, also habe ich es einfach als JSON importiert Ich habe nicht viel Verarbeitung in die Einstellungsdatei geschrieben ...

Infolgedessen ist der Index schwierig geworden, aber ich werde vorerst so weitermachen, wie er ist.

スクリーンショット 2017-04-06 7.26.23.png

ELK ist also praktisch, egal wie oft Sie es verwenden. Solange ich froh bin, dass Kibana eine kleine Visualisierung machen kann, sobald es in Elasticsearch eingegossen ist. Ich habe versucht, die Anzahl der Tweets für jeden Benutzer in den diesmal erfassten Tweets zu bestimmen. Der Benutzer, der twittert, kann über "user.screen_name" abgerufen werden.

スクリーンショット 2017-04-04 7.14.22.png

Hmmm, vielleicht hattest du einen guten Kampf, aber hast du nicht 100 getwittert? Geben wir unser Bestes.

Die am meisten retweetete Person war "nakayama_san". Er ist derjenige, der bei Lernsitzungen immer leicht verständliche Bilder veröffentlicht. Überzeugt. Retweets werden durch "retweeted_status.user.screen_name" eingegrenzt. Ich frage mich, ob es so passt ... スクリーンショット 2017-04-04 7.26.32.png

Übrigens, wenn ich versuche, die Tag-Cloud vorerst anzuzeigen, sieht es so aus. Es ist überhaupt nicht gut (^^; Es ist natürlich, aber es liegt daran, dass ich nichts wie analysiert eingestellt habe. スクリーンショット 2017-04-06 7.33.21.png

Bei JAWS DAYS gibt es selbst nur wenige Tweets. Daher müssen Vorbereitungen getroffen werden, z. B. die Zeichenkette richtig zu analysieren, die Logstash-Einstellung richtig zu berücksichtigen und dem Zielindex eine Vorlage hinzuzufügen.

Wenn Sie sich jedoch richtig vorbereiten und dann analysieren, können Sie Trendschlüsselwörter in re: Invent sehen.

Zusammenfassung

Vorerst habe ich einen Fluss von "Datenerfassung" → "Visualisierung" erstellt. Dieses Mal habe ich es unter der Annahme erstellt, dass es lokal ausgeführt wird. Wenn Sie es jedoch so wie es ist in AWS analysieren und die URL veröffentlichen können, können Trendschlüsselwörter möglicherweise in Echtzeit in der Tag-Cloud angezeigt werden. Hmm. Wenn Sie Lust dazu haben, versuchen wir es vor re: Invent.

Recommended Posts

Ich habe versucht, die Tweets von JAWS DAYS 2017 mit Python + ELK einfach zu visualisieren
Ich habe versucht, die Entropie des Bildes mit Python zu finden
[Python] Ich habe versucht, Tweets über Corona mit WordCloud zu visualisieren
[Python] Ich habe versucht, die folgende Beziehung von Twitter zu visualisieren
Ich habe versucht, die Effizienz der täglichen Arbeit mit Python zu verbessern
[Python] Ich habe versucht, die Nacht der Galaxienbahn mit WordCloud zu visualisieren!
Ich habe versucht, den Authentifizierungscode der Qiita-API mit Python abzurufen.
Ich habe versucht, die Standardrolle neuer Mitarbeiter mit Python zu optimieren
Ich habe versucht, den Text des Romans "Wetterkind" mit Word Cloud zu visualisieren
Ich habe versucht, die Filminformationen der TMDb-API mit Python abzurufen
[Python] Ich habe versucht, das Preisgeld von "ONE PIECE" über 100 Millionen Zeichen mit matplotlib zu visualisieren.
Ich habe versucht, eine CSV-Datei mit Python zu berühren
Ich habe versucht, Soma Cube mit Python zu lösen
Ich habe versucht, die Spacha-Informationen von VTuber zu visualisieren
Ich habe versucht, das Problem mit Python Vol.1 zu lösen
Ich habe versucht, die String-Operationen von Python zusammenzufassen
Ich habe versucht, die Literatur des neuen Corona-Virus mit Python automatisch an LINE zu senden
Ich habe versucht, das Bild mit Python + OpenCV "gammakorrektur" zu machen
Ich habe versucht zu simulieren, wie sich die Infektion mit Python ausbreitet
Ich habe versucht, mit TensorFlow den Durchschnitt mehrerer Spalten zu ermitteln
Python-Übung 100 Schläge Ich habe versucht, den Entscheidungsbaum von Kapitel 5 mit graphviz zu visualisieren
Ich habe versucht, das Artikel-Update des Livedoor-Blogs mit Python und Selen zu automatisieren.
Ich habe versucht, die Eigenschaften der neuen Informationen über mit dem Corona-Virus infizierte Personen mit Wordcloud zu visualisieren
Ich habe versucht, die Laufdaten des Rennspiels (Assetto Corsa) mit Plotly zu visualisieren
Ich habe versucht, die Verarbeitungsgeschwindigkeit mit dplyr von R und pandas von Python zu vergleichen
Beim 15. Offline-Echtzeitversuch habe ich versucht, das Problem des Schreibens mit Python zu lösen
Ich habe versucht, das Ranking des Qiita-Adventskalenders mit Python zu kratzen
Ich habe versucht, die Bewässerung des Pflanzgefäßes mit Raspberry Pi zu automatisieren
Ich habe versucht, AutoEncoder mit TensorFlow zu visualisieren
Ich habe versucht, das Problem von F02 zu lösen, wie man mit Python offline in Echtzeit schreibt
Ich möchte den Anfang des nächsten Monats mit Python ausgeben
Ich habe versucht, mit Python eine Liste von Primzahlen zu erstellen
Ich habe versucht zu beheben "Ich habe versucht, die Wahrscheinlichkeit eines Bingospiels mit Python zu simulieren"
Ich habe versucht, die Größe des logischen Volumes mit LVM zu erweitern
Ich habe versucht, Gesichtsmarkierungen mit Python und Dlib leicht zu erkennen
Ich schrieb einen Test in "Ich habe versucht, die Wahrscheinlichkeit eines Bingospiels mit Python zu simulieren".
Ich habe versucht, automatisch Bilder von Kanna Hashimoto mit Python zu sammeln! !!
Ich habe versucht, den allgemeinen Zustand der VTuber-Kanalbetrachter zu visualisieren
PhytoMine-I hat versucht, mit Python die genetischen Informationen der Pflanze zu erhalten
Ich habe versucht, die Sprecheridentifikation mithilfe der Sprechererkennungs-API von Azure Cognitive Services mit Python zu überprüfen. # 1
Ich habe versucht, die Sprecheridentifikation mithilfe der Sprechererkennungs-API von Azure Cognitive Services in Python zu überprüfen. # 2
Ich habe versucht, die erste Frage der Mathematik-Aufnahmeprüfung 2019 der Universität Tokio mit Python Sympy zu lösen
Ich habe versucht, die Altersgruppe und die Ratenverteilung von Atcoder zu visualisieren
Ich habe versucht, die Bewegungen von Wiire-Playern automatisch mit Software zu extrahieren
(Python) Ich habe versucht, 1 Million Hände zu analysieren ~ Ich habe versucht, die Anzahl der AA ~ zu schätzen
Ich habe es mit den Top 100 PyPI-Paketen versucht.> Ich habe versucht, die auf Python installierten Pakete grafisch darzustellen
Ich habe versucht, die Beschleunigung von Python durch Cython zu verifizieren und zu analysieren
Ich habe versucht, die Negativität von Nono Morikubo zu analysieren. [Vergleiche mit Posipa]
Ich habe versucht, das Modell mit der Low-Code-Bibliothek für maschinelles Lernen "PyCaret" zu visualisieren.
Ich habe versucht, alle Entscheidungsbäume des zufälligen Waldes mit SVG zu visualisieren
Ich habe versucht, das Verhalten des neuen Koronavirus mit dem SEIR-Modell vorherzusagen.
Ich habe versucht, das Bild mit Python + OpenCV zu "glätten"
Ich habe versucht, das Bild mit Python + OpenCV zu "differenzieren"
Ich habe versucht, die Daten mit Zwietracht zu speichern
Ich habe versucht, die Trapezform des Bildes zu korrigieren
Ich habe versucht, LLVM IR mit Python auszugeben
Ich habe versucht, das Bild mit Python + OpenCV zu "binarisieren"