過去の「0文字引用RT」を期間指定して取得しようとするも、挫折

TwitterTwitter API

過去の「0文字引用RT」を取得しようとするも、挫折

 状態:試行錯誤履歴  閲覧数:1,350  投稿日:2020-03-20  更新日:2020-03-20
過去の「0文字引用RT」を取得しようとするも、挫折

大前提 / これまで / 自分で作成することを決意

RTだけ表示するやつ / 2020/3/20時点の結論 / Link


大前提 / これまで / 自分で作成することを決意

 閲覧数:388 投稿日:2020-03-20 更新日:2020-03-21

大前提


APIを使用しないと、「0文字引用RT」は検索出来ない
下記方法では何れも、「0文字引用RT」は検索出来ない

ユーザー名が「@development」の場合
期間指定検索
from:development since:2019-08-26 until:2019-09-01
日本時間指定して期間指定検索
from:development since:2019-08-26_00:00:00_JST until:2019-09-01_00:00:00_JST

これまで


'max_id'パラメータを手動で指定して検索
・とてつもなく面倒くさい
RTだけ取得に挑戦

自分で作成したアプリで問題が発生
2020年2月に実行されたTwitter仕様変更に伴い、過去3,200件以前の「(0文字引用)リツイート」を削除できなくなる
・「(0文字引用)リツイート削除する」というやり方を変更(せざるを得なくなる)

過去タイムライン
期間指定検索していくことを決定

過去タイムラインで問題が発生
2020/3/20、正常動作しなくなっている

自分で作成することを決意


Twitter APIで、(期間指定した)日付から(最小及び最大)ツイートidを取得するには?
最終的にやりたいこと
statuses/user_timelineで、(日付で)期間指定して、(リツイート込みの)ツイートを取得したい
日付指定で特定ユーザーのタイムラインをリツイート込みで取得したい

Q.Twitter APIで、(期間指定した)日付から(最小及び最大)ツイートidを取得するには?
since_idとmax_idを日付から取得したいのですが、どう書けば良いですか?
Search Tweetsは、untilで日付指定できるけれどもsinceはパラメータ指定不可ですか?

最初に「https://api.twitter.com/1.1/search/tweets.json」から'max_id'取得しようとしたが、期待した結果を取得できない
「"max_id":1240811995607859200,」を取得されたが、そんなツイートidは存在しない
{"statuses":[],"search_metadata":{"completed_in":0.004,"max_id":1240811995607859200,"max_id_str":"1240811995607859200","query":"from%3A★★★★+until%3A2019-08-26","refresh_url":"?since_id=1240811995607859200&q=from%3A★★★%20until%3A2019-08-26&include_entities=1","count":15,"since_id":0,"since_id_str":"0"}}
GET search/tweets - ツイートを検索する

Standard search API仕様
1週間以上前の日付は指定不可
until
optional
Returns tweets created before the given date. Date should be formatted as YYYY-MM-DD. Keep in mind that the search index has a 7-day limit. In other words, no tweets will be found for a date older than one week. 2015-07-19
指定された日付より前に作成されたツイートを返します。 日付はYYYY-MM-DDの形式にする必要があります。 検索インデックスには7日間の制限があることに注意してください。 つまり、1週間以上前の日付のツイートは見つかりません。
ダメじゃん


In statuses / user_timeline, I want to get my tweets (with retweets) by date range

RTだけ表示するやつ / 2020/3/20時点の結論 / Link

 閲覧数:502 投稿日:2020-03-20 更新日:2020-04-05

RTだけ表示するやつ


「日付の上限」設定可能
どうしてなの?
Webアプリ「RTだけ表示するやつ」を作りました
Webアプリ「RTだけ表示するやつ」を使ってほしい
bookii/retweetlog-nodejs: 指定したユーザーのRTを抜き出して表示するWebアプリ

リクエスト送信先と思われる個所
widgets.jsの中にリクエスト送信先が記述されている?
retweetlog-nodejs/myFetch.js
getScript('https://platform.twitter.com/widgets.js');  // render


リクエスト結果と思われる個所
retweetlog-nodejs/myTwitter.js
    const html = `<blockquote class="twitter-tweet" data-lang="ja" ${cardStatus}><p lang="${lang}" dir="ltr">${text}</p>&mdash; ${name} (@${screenName}) <a href="https://twitter.com/${screenName}/status/${idStr}">${createdAt}</a></blockquote>`


JavaScript APIを使用しているみたい
https://platform.twitter.com/widgets/widget_iframe
https://platform.twitter.com/widgets.js

2020/3/20時点の結論(もしくは感想)


調査するも分からなかった点(時間の無駄なので何か新情報を得られない限り二度と挑戦しない)
・過去の「0文字引用RT」を期間指定して取得する方法
・Twitter の「JavaScript API」。最終的なリクエスト先は他限度と同様? 「JavaScript API」独自のリクエスト送信先やパラメータは存在するの?
・Twitter の widgets.js を API経由で操作する方法(設定可能なパラメータなど)

RTだけ表示するやつ
「タイトル」と「UI」から誰でも出来るような実装かと思いきや、全然違うみたい。羊の皮を被った狼や!

今度について
・「RTだけ表示するやつ」で、「リツイートした日付の上限」を一日単位で指定していく。これしか方法がない
・「自分がリツイートした日時」が「過去タイムライン」のように表示されないため、前回(今回の検索より一日前)のツイートを覚えておくしかない

2019/9/16まで終了
“Not a crime to be young,” some spray painted on the road

2020/4/3時点の感想


ようやく、「過去の0文字引用RT」全てを確認出来た
・物凄い労力を要した
・後で振り返る可能性がある場合は、「0文字引用RT」は(絶対に)止めたほうが良い

今後について
下記で期間指定しながら、確認転載後、1件1件削除していく
from:xx since:2017-10-01 until:2017-12-01
次は下記から
from:xx since:2018-04-11 until:2018-04-30

Link
過去タイムライン
Twitter Publish

Private
RTだけ取得
RTだけ取得デモ


Twitter API

「Twitter Developer」審査結果に通り、appを作成。しかし、いつの間にか「User is not Authorized」が表示されていたケース



類似度ページランキング
順位 ページタイトル抜粋
1 過去の「0文字引用RT」を期間指定して取得しようとするも、挫折 97
2 「Twitter API」経由でツイートを無料取得することはできません。 27
3 既存Twitterアカウントより電話番号を削除すると、どうなるの? 新規アプリ作成する際、再度電話番号を使用したSMS認証が必要になる 22
4 GitHubリモートリポジトリ名には日本語を使用できない。使用すると、ハイフンへ自動置換されてしまう 22
5 トラブル発生する度に「Git GUI」を探すが、いつも「Git Bash」が一番じゃん、という結論になる。 21
6 「ロボットによる操作ではないことを確認してください」と表示されているにも関わらず、確認する方法が案内されている場合は、ブラウザキャッシュを削除する 21
7 「既存Twitterアプリが使用できる」からと言って「Twitter開発者アカウント」を保持しているとは限らない 21
8 プロジェクトをいかに再利用しやすい様、共通するかが大事 21
9 感想履歴(技術エントリーを見返した際に不要だと感じた「当時の感想」をこのエントリーへ移動する) 21
10 TwitterOAuth では、画像URL を指定した画像投稿は出来ない(と思う)。ライブラリを使用しなければ出来るから、Twitter API の制限ではない(と思われる)  20
11 RTだけ取得に挑戦 20
12 Twitter 認証で電子メール取得するまで 19
13 同じ携帯電話番号でも、複数の「Twitter Developers」アカウントを作成可能 19
14 Git 失敗履歴2。「$ git reset」→ ソースコード削除。※Git BASH 経由で Windows10 から GitHub へ PUSH しようとするも、誤ってソースコードを削除してしまう 18
15 Twitter連携ログイン代替APIを探しています 18
16 「Twitter API」は、2023 年 5 月 10 日時点では、SMS認証(電話番号登録)不要でプロジェクト作成できるよう仕様変更されています。 17
17 Webサイトで課金決済するためにはどうすればよいか、調査 17
18 Twitterで並替機能を利用するモーメント数表示が0になるバグ。Twitter側は直す気がないと思われ 17
19 「Twitter Developer」審査結果に通り、appを作成。しかし、いつの間にか「User is not Authorized」が表示されていたケース 16
20 「Twitter Developers」でアプリケーションを新規作成するためには? SMS認証用コードを確認可能な電話番号の登録が必要 16
2024/11/22 20:34 更新