Gibt es eine einfache Möglichkeit, die Tweets von jemandem über die Befehlszeile abzurufen?
Das Konto wäre öffentlich und der Befehl - oder ggf. das Skript - würde alle oder eine bestimmte Anzahl der neuesten Tweets in eine Textdatei abrufen, einen Tweet pro Zeile, ohne die Metadaten, die neuesten in der ersten Zeile.
Ohne die Verwendung von API nur Bash.
command-line
bash
wget
Strapakowsky
quelle
quelle
Antworten:
Ab dem Stichtag lässt Twitter Sie nicht mehr in die API ein, ohne einen OAuth-Schlüssel zu haben. Als Problemumgehung können Sie jedoch die Such-API verwenden. Es ist RESTful, sodass Sie
curl
Suchergebnisse im JSON-Format abrufen können . Wenn Sie beispielsweise die Tweets von @ java abrufen und in einer Datei speichern möchten~/.tweets
, kann diese Codezeile verwendet werden:Sie können die Datei mit einem beliebigen JSON-Parser analysieren.
Der
rpp
Parameter ist die Anzahl der abzurufenden Tweets.callback
ist eine Javascript-Funktion, die auf dem resultierenden JSON ausgeführt werden soll. Falls Sie kein JavaScript mit der API verwenden, können Sie es verlassen, aber nicht entfernen. Ich werde einen Fehler verursachen. Weitere Anleitungen zur Such-API finden Sie unter https://dev.twitter.com/docs/api/1/get/searchEs gibt Tools zum Parsen von JSON über die Befehlszeilenschnittstelle. Obwohl ich noch nie einen verwendet habe, werde ich einige Links zu einigen Ressourcen einfügen, um Ihnen zu helfen, das am besten geeignete Tool zu finden:
Und als kleine Anmerkung ist es schneller, einige Python oder Ruby (oder andere) zu verwenden.
quelle
Wenn Sie die Twitter-API nicht verwenden möchten, können Sie den RSS-Feed des Twitter-Profils mithilfe eines Bash-Skripts abrufen und von dort aus formatieren.
Da die Twitter-API den RSS-Feed nicht mehr unterstützt, können Sie dies umgehen, indem Sie mithilfe der Suchergebnisse einen RSS-Feed generieren.
Hier ist der RSS-Feed meiner Tweets .
Sie müssten jedoch das erforderliche Bash-Skript zusammenstellen. Vom Abrufen des RSS-Feeds bis zur Formatierung der Tweets gemäß Ihren Anforderungen.
quelle
Dies ist mein Skript für die Verwendung als Bildschirmschoner
quelle
Ich habe ein Tool entwickelt, das fast genau das tun sollte, was Sie beschrieben haben: Twitter-Screen-Scrape . Standardmäßig wird es in JSON mit Metadaten ausgegeben, aber es ist trivial, die Ausgabe durch etwas wie Unterstrich-Cli zu leiten , um alles zu entfernen , was Sie nicht wollen.
quelle
Sie können den Python + Tweepy-Weg gehen, indem Sie:
Ich habe es gerade getestet und es funktioniert großartig. Es gibt jedoch Benutzer, die ihre Tweets schützen, sodass Sie möglicherweise nicht alles herunterladen können. Aber das ist eine Funktion von Twitter.
Das Limit ist immer noch 3200 und Sie erhalten eine CSV-Datei.
quelle
Sie können
twarc
ein Beispiel geben, wenn Sie die von Ihnen verwendeten Tweets von Nassim Nicholas Taleb archivieren möchten.Sie können auch andere Formate verwenden:
--format {json,csv,csv-excel}
So konfigurieren Sie
twarc
: Der einzige Weg, um die vollständigen Tweets zu erhalten, ist die Verwendung der.API
Selbst wenn die App transparent ist, müssen Sie eine anfängliche Einrichtung und Konfiguration haben. Sie müssen auch dieAPI
()
Sobald Sie Ihre Anwendungsschlüssel erhalten haben , können
twarc
Sie mit dem Befehl configure feststellen, um welche es sich handelt.Dies speichert Ihre Anmeldeinformationen in einer Datei mit dem Namen
.twarc
in Ihrem Home - Verzeichnis , damit Sie sie in nicht zu behalten haben eingeben. Wenn Sie lieber sie Sie sie direkt beliefern würden in der Umgebung einstellen können (CONSUMER_KEY
,CONSUMER_SECRET
,ACCESS_TOKEN
,ACCESS_TOKEN_SECRET
) oder Befehlszeilenoptionen (--consumer_key
,--consumer_secret
,--access_token
,--access_token_secret
).quelle