回答:
近い日付から、TwitterはOAuthキーを持たない限りAPIにアクセスできません。ただし、回避策としてSearch APIを使用できます。RESTfulであるためcurl
、JSON形式で検索結果を取得するために使用できます。たとえば、@ javaのツイートを取得してfile ~/.tweets
に保存する場合、次のコード行を使用できます。
curl http://search.twitter.com/search.json?q=from:java&page=1&rpp=10&callback=? >> $HOME/.tweets
また、JSONパーサーを使用してファイルを解析できます。
rpp
パラメータは、ツイートAF番号が取得されます。callback
結果のJSONで実行されるjavascript関数です。APIでJavaScriptを使用していない場合は、そのままにしておくことはできますが、削除しないでください。エラーが発生します。検索APIの詳細については、https://dev.twitter.com/docs/api/1/get/searchをご覧ください。
コマンドラインインターフェイスからJSONを解析するツールがあります。使用したことはありませんが、最適なツールを見つけるのに役立つように、いくつかのリソースへのリンクを掲載します。
また、ちょっとした注意として、一部のPythonまたはRuby(またはその他)を使用する方が簡単です。
Twitter APIを使用したくない場合は、bashスクリプトを使用してTwitterプロファイルのRSSフィードを取得し、そこからフォーマットを開始できます。
Twitter APIはRSSフィードを非推奨にしているため、検索結果を使用してRSSフィードを生成することで回避できます。
ただし、必要なbashスクリプトをまとめる必要があります。RSSフィードの取得から、要件に応じたツイートの書式設定まで。
これはスクリーンセーバー用に作成された私のスクリプトです
#!/bin/bash
user="$1"
user="${user:=pontifex_pl}"
last_status_url=$(lynx -dump https://twitter.com/$user \
| grep -i "$user/status/" \
| head -1 \
| awk '{print $2}')
lynx -dump "$last_status_url" \
| grep 'Twitter:' -m1 -A4 \
| tr -d '\n' \
| sed -e 's/[^"]*"//' -e 's/".*//' \
| tr -s ' '
echo
私が作成したツールは、あなたが説明したものとほぼ正確に一致するはずです:twitter-screen-scrape 。デフォルトでは、メタデータ付きのJSONで出力されますが、出力をunderscore-cliのようなものにパイプして、不要なものをすべて取り除くのは簡単です。
$ twitter-screen-scrape -u slang800 | underscore pluck text --outfmt text > outputfile
あなたはpython + tweepyルートに行くことができます:
私はそれをテストしましたが、うまく機能します。ただし、ツイートを保護するユーザーがいるため、すべてをダウンロードできない場合があります。しかし、それはツイッターの機能です。
制限はまだ3200で、CSVファイルを取得します。
使用twarc
するNassim Nicholas Talebのツイートをアーカイブする場合は、例を使用して使用できます。
twarc timeline nntaleb --format csv> taleb.csv
他の形式も使用できます。 --format {json,csv,csv-excel}
構成方法twarc
:
完全なツイートを取得する唯一の方法は、API
残念ながらアプリが透過的であっても、初期セットアップと構成が必要な場合でも、API
(
2018年7月の時点で、新しいアプリを作成する前に、Twitter開発者アカウントを申請し、承認される必要があります。
)
一度あなたがあなたのアプリケーションキーを持っているあなたが言うことができるtwarc
彼らはconfigureコマンドですか。
twarc configure
これはと呼ばれるファイルに資格情報格納します.twarc
あなたがそれらを入力維持する必要はありませんので、あなたのホームディレクトリにします。あなたは、むしろそれらを直接供給したい場合、あなたが環境にそれらを設定することができます(CONSUMER_KEY
、CONSUMER_SECRET
、ACCESS_TOKEN
、ACCESS_TOKEN_SECRET
)または(コマンドラインオプションを使用して--consumer_key
、--consumer_secret
、--access_token
、--access_token_secret
)。