So erhalten Sie Tweets mithilfe von IDs mit Tweepy, Twitter API und Python

Blog

So erhalten Sie Tweets mithilfe von IDs mit Tweepy, Twitter API und Python

So erhalten Sie Tweets mithilfe von IDs mit Tweepy, Twitter API und Python

In diesem Beitrag werde ich erklären, wie man Tweets mit ihren IDs mit Tweepy abruft. Ich werde erklären, warum wir so etwas tun? Warum wir Tweet-IDs statt direkt selbst speichern, danach werde ich erklären, was Tweepy ist und wie man es verwendet. Und zuletzt sehen wir ein Beispiel mit Python.



Zunächst stellt sich die Frage, warum wir Tweet-IDs verwenden. Dies ist tatsächlich das Ergebnis der Hardware. Wir wollen nicht ständig viel Speicher verbrauchen. Wir haben nicht genug Platz!

Nach der Identifizierung von Tweets speichern wir deren IDs, das bedeutet, dass wir sie später abrufen können. Aber ist es wirklich notwendig? Wie viel Platz können wir mit dieser Methode sparen? Hier ist ein Beispiel: Da ich an Naturkatastrophen in unserer Welt arbeite, suche ich ständig nach Datensätzen. Und wenn Sie Data Scientist sind, benötigen Sie eine große Datenmenge, um Korrelationen herauszufinden. Hier ist das Beispiel; https://crisisnlp.qcri.org ist die Website, die einige Datensätze speichert und mit Datenwissenschaftlern teilt, um ihnen zu helfen. Auf dieser Website gibt es eine Ressource Nummer 5, die sich mit Tweets befasst, die während sieben großen Naturkatastrophen veröffentlicht wurden.



Wenn Sie Tweets dieser Datensätze herunterladen möchten, müssen Sie etwa 1,8 GB Daten herunterladen. Wenn Sie jedoch nur ihre IDs herunterladen möchten, müssen Sie nur 79 MB herunterladen. Tweets sind also 22-mal größer als ihre IDs. Denken Sie jetzt daran, dass Sie die ganze Zeit Daten sammeln und diese Art von Datensätzen für jedes Thema haben. Sie müssen viele Festplatten kaufen, denke ich, was natürlich nicht bevorzugt wird. Aus diesem Grund ziehen wir es vor, Tweet-IDs zu speichern, nachdem wir sie ausgewählt und analysiert haben. Das heißt, wir können sie später holen, wenn wir sie brauchen.

Tweepy- und Twitter-API



Wie kaufe ich eine Runenseite?

Nehmen wir nach diesen kurzen Informationen an, dass wir im Internet einen guten Datensatz gefunden haben, von dem wir glauben, dass er für unsere Arbeit nützlich ist, der jedoch nur aus Tweet-IDs besteht. Wie können wir sie holen? Tweepy ist meine Antwort. Was ist Tweepy?

Tweepy erklärt sich als a Eine benutzerfreundliche Python-Bibliothek für den Zugriff auf die Twitter-API. Es ist eigentlich eine Bibliothek, die die Twitter-API verwendet. Twitter hat eine eigene API, um auf eigene Funktionen zuzugreifen. Kurz gesagt, mit Tweepy wird es viel einfacher, die Twitter-API zu verwenden. Ich werde hier nicht in die Twitter-API eintauchen, aber bitte überprüfen Sie diesen Link, um mehr zu erfahren: https://developer.twitter.com/en.html

Fahren wir mit der Verwendung von Tweepy fort. Um Tweepy zu verwenden, müssen wir uns zuerst als Twitter-Entwickler anmelden. Bitte besuchen Sie den obigen Link, um sich als Entwickler anzumelden und Ihre Anmeldeinformationen zu erhalten. Andernfalls können Sie die Twitter-API nicht verwenden, was dazu führt, dass Sie Tweepy nicht ebenfalls verwenden können.

Hier sind die Schritte, um ein Twitter-Entwickler zu werden;

Besuchen Sie diesen Link; https://developer.twitter.com/en/apply-for-access

Über den obigen Link beantragen Sie bei Twitter ein Entwicklerkonto.

Javascript in Kleinbuchstaben konvertieren

Das ist der Bildtitel

Klicken Sie auf die Schaltfläche Entwicklerkonto beantragen.

Das ist der Bildtitel

Und melden Sie sich bitte mit Ihrem Konto an.

Hier ist also die Seite, die Sie willkommen heißt.

Das ist der Bildtitel

Bitte wählen Sie aus, warum Sie die Twitter API verwenden möchten. Und klicken Sie auf Weiter. Danach gibt es einige Seiten zum Ausfüllen von Details. Twitter möchte mehr über Ihr Ziel erfahren. Sie müssen Ihr Projekt oder Ihre Idee Twitter konkret beschreiben. Ich wollte zum Beispiel Tweets für meine Abschlussarbeit holen und habe Twitter Details meiner Abschlussarbeit erklärt. Nach einigen ausführlichen Erläuterungen. Klicken Sie dann auf Weiter, bis Sie Ihre Bewerbung abgeschickt haben.

Dann können Sie auf die Antwort von Twitter warten. Wenn Sie eine solche E-Mail erhalten, ja! Jetzt können Sie mit der Verwendung der Twitter-API beginnen.

Das ist der Bildtitel

Ruby-Projekte für Anfänger

Um eine Anfrage an die Twitter-API senden zu können, benötigen Sie Authentifizierungsdaten. Sie müssen eine App erstellen, um Zugangsdaten zu erhalten. Erstellen Sie also bitte eine App unter der Rubrik Apps.

Das ist der Bildtitel

Klicken Sie auf die Schaltfläche App erstellen, und Sie müssen einige Details zu Ihrer Anwendung eingeben. Auch auf der linken Seite des Bildschirms können Sie Antworten auf FAQs sehen.

Das ist der Bildtitel

Nach Abschluss der App-Erstellung haben Sie nun Ihre Zugangsdaten unter dem Abschnitt Schlüssel und Token.

Das ist der Bildtitel

Jetzt ist es Zeit zum Codieren! Sie haben alles für Ihre Bewerbung. Installieren Sie Tweepy und verwenden Sie es, um die Twitter-API aufzurufen.

#This code creates the dataset from Corpus.csv which is downloadable from the #internet well known dataset which is labeled manually by hand. But for the text #of tweets you need to fetch them with their IDs. import tweepy # Twitter Developer keys here # It is CENSORED consumer_key = 'XX' consumer_key_secret = 'XX' access_token = 'XX-XX' access_token_secret = 'XX' auth = tweepy.OAuthHandler(consumer_key, consumer_key_secret) auth.set_access_token(access_token, access_token_secret) api = tweepy.API(auth) # This method creates the training set def createTrainingSet(corpusFile, targetResultFile): import csv import time counter = 0 corpus = [] with open(corpusFile, 'r') as csvfile: lineReader = csv.reader(csvfile, delimiter=',', quotechar=''') for row in lineReader: corpus.append({'tweet_id': row[2], 'label': row[1], 'topic': row[0]}) sleepTime = 2 trainingDataSet = [] for tweet in corpus: try: tweetFetched = api.get_status(tweet['tweet_id']) print('Tweet fetched' + tweetFetched.text) tweet['text'] = tweetFetched.text trainingDataSet.append(tweet) time.sleep(sleepTime) except: print('Inside the exception - no:2') continue with open(targetResultFile, 'w') as csvfile: linewriter = csv.writer(csvfile, delimiter=',', quotechar=''') for tweet in trainingDataSet: try: linewriter.writerow([tweet['tweet_id'], tweet['text'], tweet['label'], tweet['topic']]) except Exception as e: print(e) return trainingDataSet # Code starts here # This is corpus dataset corpusFile = 'datasets/corpus.csv' # This is my target file targetResultFile = 'datasets/targetResultFile.csv' # Call the method resultFile = createTrainingSet(corpusFile, targetResultFile)

Hier ist der Code, den ich zum Abrufen von Tweets verwendet habe. Bitte füllen Sie hier Ihre Token und Schlüssel aus, ich habe sie als XX belassen. Dafür habe ich den bekannten Korpus verwendet. Aber Sie können den gleichen Code natürlich auch für jeden anderen Datensatz verwenden. Meine Korpusdatei sieht so aus;

Das ist der Bildtitel

Dies ist Korpus, bei dem es um einige Tweets über große Unternehmen geht, die als positiv, negativ oder neutral gekennzeichnet sind. Wie Sie sehen können, ist die letzte Spalte die Tweet-ID.

Mit dem obigen Code nehmen wir diese IDs aus der Korpusdatei, holen die Tweets nacheinander ab und schreiben sie in eine neue Datei namens targetResultFile.csv. Das Ergebnis sieht so aus;

Python Visual Studio-Code debuggen

Das ist der Bildtitel

Beim Ausführen des Codes gibt es einige wichtige Punkte. Ich wollte alles mit Kommentaren erklären, aber lassen Sie uns einen wichtigen Punkt unterstreichen. Twitter hat einige strenge Grenzen. Sie können nicht alles einmal holen.

Das ist der Bildtitel

Aufgrund dieser Einschränkungen müssen Sie Ihrem Code einige Verzögerungen oder eine andere Geschäftslogik hinzufügen. Tweepy hat dafür seine einzigartigen Ausnahmen. Ich habe dies vorerst nicht zu meinem Beispielcode hinzugefügt, aber Sie können die spezifischen Codeblöcke für bestimmte Ausnahmen hinzufügen, zum Beispiel RateLimitError. Sie können eine Verzögerung hinzufügen, wenn Sie diese Ausnahme abgefangen haben. Es kann bis zu einer Stunde dauern, bis Sie neue Tweets abrufen können, wenn Sie diese Ausnahme festgestellt haben. Weitere Informationen finden Sie Hier .

Das ist der Bildtitel

Nachdem Sie Ihre Tweets erfolgreich abgerufen haben, müssen Sie Ihre Tweets nun möglicherweise vorverarbeiten. Sie können die folgende Geschichte über die Vorverarbeitung von Tweets weiterlesen, um mehr über dieses Thema zu erfahren.

Wir haben erfolgreich Tweets von Twitter abgerufen und sind bereit, fortzufahren! Vielen Dank für Ihre Zeit! Bitte teilen, wenn es Ihnen gefallen hat!

#Python #Twitter #Data Science #Maschinelles Lernen #Tweepy