🌟

楽天の売れ筋商品からランダムにX(Twitter)に投稿する

2023/08/28に公開

はじめに

楽天BooksのIT関連の書籍の売れ筋からランダムでTwitterに投稿するシステムを作りました。
特定のジャンルの売れ筋上位30の中からランダムに1つを選択していますので、場合によっては同じ商品が投稿される場合もあります。

環境

  • Railway
    • python3.11
      • tweepy
      • reuests

ソースコード

import tweepy
from const import *


def create_post(_title, _affiliate_url, _item_caption):
    client = tweepy.Client(consumer_key=tw_api_key,
                           consumer_secret=tw_api_secret_key,
                           access_token=tw_access_token,
                           access_token_secret=tw_access_token_secret)
    client.create_tweet(text=f"今日の1冊📕\n"
                             f"タイトル:{_title}\n"
                             f"内容:{_item_caption}\n"
                             f"#{book_genre}\n"
                             f"{_affiliate_url}")

実行環境

作成したソースコードを動かしているのは、RailwayというWebサービス上になります。
クレジットカードの登録が不要で利用開始できるので、ぜひ試してみて下さい。

Twitter APIの取得

  1. 最初にTwitterのアカウントを作成しましょう
  2. 次にTwitter Developer Portalにアクセスします。
  3. 「TwitterのAPIを何に使いますか?」的なことを聞かれます。
    1. 適当にGoogle翻訳などを利用して英文を作成します
  4. Twitter APIに必要なキーは以下の4つです。
    1. API_KEY
    2. API_SECRET_KEY
    3. ACCESS_TOKEN ※
    4. ACCESS_TOKEN_SECRET ※
      • User authentication settingsを先に設定してからGenerateして下さい
  5. User authentication settingsの設定
    • App permissonsRead and Writeを選択して下さい
    • Type of Appはどっちでもいいです
    • App info
      • Callback URI / Redirect URL
      • Website URL
        • 私は、自分のZennのページを設定しました

楽天API

  1. Rakuten Developersにサインインします
  2. アプリIDの発行をクリック
  3. アプリ新規作成フォームアプリURLは上記と同じく自分のZennのページにしました
  4. APIに必要なのは、アプリIDです。メモっておきましょう。

ソースコードの解説

最初に、楽天APIを叩いて商品情報(30件)を取得します。取得した中からランダムに1件の情報を選択し、内容を加工してTwitterに投稿するという流れです。

実際のアカウント

以下が実際に作成たbotアカウントです。3時間毎に呟くように設定しています。よかったらフォローをお願い致します。
https://twitter.com/xiang_si75209

最後に

楽天BooksのIT関連の書籍の売れ筋からランダムでTwitterに投稿するシステムを作りました。これで、定期的に Twitterに楽天BooksのIT関連の書籍が投稿されるので、少しでも皆様の目に届くことを期待しています。

参考

https://qiita.com/Pumila/items/29f26fb349d5592046ae

Discussion