Sur Twitter, "Paramètres"> "Comptes"> "Données Twiter"> "Télécharger l'archive" Comme vous le savez, il existe une fonction pour télécharger tous vos tweets passés.
Le fichier téléchargé contient des informations sur les tweets précédents, les tweets RT, les tweets aimés, les messages directs, etc. (Il semble que vous puissiez naviguer en ouvrant index.html qui est généralement téléchargé ensemble, mais dans mon cas, index.html n'a pas été téléchargé. Pourquoi?)
Pratique pour visualiser vos propres tweets tout en comprenant BERT ↑ J'ai remarqué après avoir lu cet article. ↓ (Référence) [Résolu] Je ne peux pas télécharger tout l'historique des tweets sur Twitter [Méthode]
Si vous voulez faire du text mining ou une sorte d'analyse, vous voudrez probablement lire tweet.json. Dans cet article, nous traiterons ce fichier json en un csv facile à utiliser pour l'analyse morphologique. Le csv à créer est composé de deux colonnes, "time stamp" et "text body".
Image de CSV qui peut être finalement créée
environnement Python 3.6.5 Mac OS Mojave 10.14.4
pandas==0.23.0
Quand j'ouvre le json téléchargé, je pense qu'il ressemble à ceci.
Rouge souligné
window.YTD.tweet.part0 =
N'est pas nécessaire, veuillez donc le supprimer. Puis changez l'extension en .txt et placez-la dans votre répertoire de travail.
read_dl_tweet.py
import pandas as pd
import json
tweets_file = open("tweet.txt", "r")
tweet = json.load(tweets_file)
Ouvrez json en tant que dataframe pandas dans le script ci-dessus. Il existe de nombreuses colonnes, mais seules les colonnes nécessaires sont extraites.
read_dl_tweet.py
df = tweet_data_frame.loc[:,["created_at","full_text"]]
Puisqu'il y a des caractères gênants tels que des sauts de ligne et des virgules lors de la création de csv, supprimez-les. Cela ne fonctionnait pas sans regex = True.
read_dl_tweet.py
df = df.replace(['\n',',',' ','\r'],'',regex=True)
De plus, le format de l'horodatage est sous une forme qui ne peut pas être utilisée pour le tri, corrigez-le pour en faciliter la lecture. J'ai pu le convertir en un seul coup avec la méthode to_datetime des pandas.
read_dl_tweet.py
df_date = pd.to_datetime(df["created_at"])
df["date_form"] = df_date
df_sorted = df.sort_values("date_form")
df_text_date = df_sorted.loc[:,["date_form","full_text"]]
Trié par horodatage nouvellement créé.
read_dl_tweet.py
df_text_date.to_csv("df_text_date.csv", header=False, index=False,sep=',',encoding='utf-16')
Modifiez les options lors de la sortie de csv selon vos besoins (par exemple en faisant du délimiteur une tabulation).
Dans Article suivant, je vais essayer de représenter graphiquement le nombre de tweets pour chaque période à partir du csv créé.
Ce code: https://github.com/KanikaniYou/plot_tweet_graph
Recommended Posts