Windows10 Anaconda3 ( jupyter notebook )
Un mémorandum de thèse de fin d'études d'un étudiant universitaire Le thème est de créer un discriminateur entre ce qui se propage et ce qui ne se propage pas dans les tweets d'actualité. Cette fois, j'écris sur le fait d'y intégrer un Tweet.
・ Développeur Tweet certifié ・ Tweepy installé
https://qiita.com/i_am_miko/items/a2e5168e619ed37afeb9
Le compte à obtenir est @livedoornews. La raison en est qu'il excelle dans le nombre d'adeptes et la sensibilité de ces adeptes (s'il faut améliorer RT).
get_newstweet.ipynb
#Importer les bibliothèques requises
import tweepy
import pandas as pd
get_newstweet.ipynb
#Paramètres de clé du consommateur et de jeton d'accès pour l'utilisation de l'API Twitter
Consumer_key = "API key"
Consumer_secret = "API secret Key"
Access_token = "Access token"
Access_secret = "Access token secret"
#Authentification
auth = tweepy.OAuthHandler(Consumer_key,Consumer_secret)
auth.set_access_token(Access_token, Access_secret)
api = tweepy.API(auth)
get_newstweet.ipynb
#Spécifiez le nom du compte
acount = "@livedoornews"
"""
Contenu de l'acquisition: numéro du Tweet, heure, texte du tweet, nombre de likes, nombre de RT
"""
def get_tweets(acount):
tweet_data = [] #Liste vide pour stocker les données à récupérer
for tweet in tweepy.Cursor(api.user_timeline,screen_name = acount,exclude_replies = True).items():
tweet_data.append([tweet.id,tweet.created_at,tweet.text.replace('\n',''),tweet.favorite_count,tweet.retweet_count])
df = pd.DataFrame(tweet_data,columns=['tweet_no', 'time', 'text', 'favorite_count', 'RT_count']) #Stocké dans pandas DataFrame
return df
df = get_tweets(acount)
Si vous souhaitez continuer à prendre des tweets avec la fonction ci-dessus, vous devez en enregistrer davantage. Par conséquent, j'ai créé deux méthodes de sauvegarde, l'une pour une nouvelle sauvegarde et l'autre pour une économie supplémentaire.
get_newstweet.ipynb
#Enregistrer nouveau
file_name = "../data/tweet_{}.csv".format(acount)
df.to_csv(file_name, index=False) #l'index n'est souvent pas nécessaire
get_newstweet.ipynb
#écraser enregistrer
file_name = "../data/tweet_{}.csv".format(acount)
pre_df = pd.read_csv(file_name) #Charger le csv précédent
df = pd.concat([df, pre_df])
df = df.drop_duplicates(subset=['tweet_no']) #Supprimer les doublons avec Tweet No.(Laissez les nouvelles données)
df.to_csv(file_name, index=False)
C'est tout pour obtenir et enregistrer des tweets. Je pense qu'il existe une meilleure façon d'enregistrer de nouveaux ou de les écraser. La prochaine fois, je voudrais supprimer RT et URL.
Recommended Posts