【X(twitter)自動化】検索して投稿を自動取得する。Google Apps Script使用。

投稿を検索して、投稿を取得できるようにしたい。

取得した投稿を他のコードに活かしたい。

今回の内容は、
特定のワードを検索してヒットする投稿を取得してくる方法を解説していきます。

この記事の内容ができるようになることで、
あなたは、特定のワードを検索する作業をしなくて良くなり、とっても楽になります

私は、この方法で実際に2023年8月現在もXを運用しているので、安心して使用していただいて問題ないです。

実際のコードをコピペできるように、表記してあります。
ぜひ参考にしていってください!

2つの前提条件

ホワイトボード上の「check」という言葉を指差すビジネスマンの手 - ポイント ストックフォトと画像

今回の実装のために、次の前提条件があります。

  1. twitter API の有料プランに加入している
  2. OAuth2 で twitter API と連携している

twitter API の有料プランに加入している

今回の「特定ワードでヒットする投稿を検索してくる」実装の場合、twitter API の有料プランに加入しておく必要があります。

有料プランは、一番やすいBasic プランでも月$100かかります。

あべべ

少し割高なので、ご自分でよく考えて判断していただけたらと思います。

X を結構使っていきたい。伸ばしていきたいと考えているなら、時間節約になるので、加入しても良いのではないかと思います。

OAuth2 で twitter API と連携している

今回の実装のために、twitter API とまず連携する必要があります。

twitter API の連携には、OAuth2 を使うのが一番楽です。(私の所感ですが)

もし、まだ連携していない方がいらっしゃいましたら、以下の記事で連携方法について解説しています。

参考にしてみてください!

あべべ

ここまでの前提条件ができていれば、準備完了です。

あとは、コードをコピペしていくだけです♪

あべべ

今回は、Google Apps Script を使って実装していきます!

コードを準備するなど事前の準備は必要ありませんが、まだよく

GASのことを知らないという方は、以下の記事を読んでからだとより理解できるかと思います!

情報を埋めてコードをコピペ

seoランキング、検索結果の位置を改善してトップになり、ウェブサイトのコンセプトへのトラフィックを増やすための検索エンジン最適化、ビジネスマンマーケティングチームは検索結果ペ� - 検索点のイラスト素材/クリップアート素材/マンガ素材/アイコン素材

以下のコードをコピペしてください。

API Key と API Secret Key はそれぞれ埋めてくださいね。

Keyword には、好きな検索したいワードを入れてください。

const API2_BASE_URL = "https://api.twitter.com";
const URL_GET_SEARCH = "/2/tweets/search/recent";
const MAX_RESULTS = 10;//検索ツイート数。10-100で指定可能

var twitter = TwitterWebService.getInstance(
  '<API Key>',//API Key
  '<API Secret Key>'//API secret key
);


function getTweets() {
  let Keyword = "ツイッター青い鳥" //好きな検索ワードを入れる
  //検索キーワード(URI Encodeが必要)
  const keyword = "?query=" + encodeURIComponent(`${Keyword} -is:retweet -has:mentions lang:ja `);
  //検索オプション
  let option = `&tweet.fields=author_id,id,text,created_at&max_results=${MAX_RESULTS}`;
  //検索キーワードとURL構築
  const url = API2_BASE_URL + URL_GET_SEARCH + keyword + option;

  //リクエスト実行
  const service = twitter.getService();
  const response = JSON.parse(service.fetch(url));
  console.log(response)
  const tweets = response.data;
  console.log(`${tweets.length}件の「${Keyword}」に関するツイートを取得しました`);
  tweets.forEach(tweet => {
    console.log(`${tweet.id}: ${tweet.text}`);
  })
  return {
    tweets: tweets,
    nextToken: response.meta.next_token
  };
};

コピペしたら、「getTweets」関数を実行してみてください!

ログにtweetID とtextが出てきたら完成です。

あべべ

この tweet ID を元にリツートやいいねをつけたりなどをすることができます!

いいねをつけたい場合は以下の記事を参考にしてみてくださいね

まとめ

今回は、特定のワードに関連する投稿を検索してくる方法を解説していきました。

自動化には、他にも多くのことができます。興味があるものがあればチャレンジしてみてください!

(Visited 24 times, 1 visits today)