Windows10 Anaconda3 ( jupyter notebook )
Ein Memorandum der Abschlussarbeit eines Universitätsstudenten Das Thema ist, einen Diskriminator zwischen dem, was verbreitet wird und dem, was nicht in Nachrichtentweets verbreitet wird, zu schaffen. Dieses Mal schreibe ich darüber, Tweet darin zu bekommen.
・ Tweet Entwickler zertifiziert ・ Tweepy installiert
https://qiita.com/i_am_miko/items/a2e5168e619ed37afeb9
Das Konto, das Sie erhalten möchten, ist @livedoornews. Der Grund ist, dass es sich durch die Anzahl der Follower und die Sensibilität dieser Follower auszeichnet (ob die RT verbessert werden soll).
get_newstweet.ipynb
#Importieren Sie die erforderlichen Bibliotheken
import tweepy
import pandas as pd
get_newstweet.ipynb
#Einstellungen für Verbraucherschlüssel und Zugriffstoken für die Verwendung der Twitter-API
Consumer_key = "API key"
Consumer_secret = "API secret Key"
Access_token = "Access token"
Access_secret = "Access token secret"
#Authentifizierung
auth = tweepy.OAuthHandler(Consumer_key,Consumer_secret)
auth.set_access_token(Access_token, Access_secret)
api = tweepy.API(auth)
get_newstweet.ipynb
#Geben Sie den Kontonamen an
acount = "@livedoornews"
"""
Erfassungsinhalt: Tweet-Nummer, Zeit, Tweet-Text, Anzahl der Likes, Anzahl der RTs
"""
def get_tweets(acount):
tweet_data = [] #Leere Liste zum Speichern der abzurufenden Daten
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']) #In Pandas DataFrame gespeichert
return df
df = get_tweets(acount)
Wenn Sie weiterhin Tweets mit der oben genannten Funktion aufnehmen möchten, müssen Sie zusätzliche Daten speichern. Daher habe ich zwei Speichermethoden erstellt, eine für das neue Speichern und die andere für das zusätzliche Speichern.
get_newstweet.ipynb
#Neu speichern
file_name = "../data/tweet_{}.csv".format(acount)
df.to_csv(file_name, index=False) #Index wird oft nicht benötigt
get_newstweet.ipynb
#Speichern überschreiben
file_name = "../data/tweet_{}.csv".format(acount)
pre_df = pd.read_csv(file_name) #Laden Sie die vorherige CSV
df = pd.concat([df, pre_df])
df = df.drop_duplicates(subset=['tweet_no']) #Duplikate mit Tweet Nr. Löschen.(Hinterlassen Sie die neuen Daten)
df.to_csv(file_name, index=False)
Das ist alles zum Abrufen und Speichern von Tweets. Ich denke, es gibt einen besseren Weg, um neue zu speichern oder zu überschreiben. Nächstes Mal möchte ich RT und URL löschen.