0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIを使って無料でツールを作ろう -シャドバ連勝デッキ検索ツール編-

0
Last updated at Posted at 2026-09-02

はじめに

AIを使って何かツールを作りたいとは思うものの、「じゃあ実際にどんなものを作ればいいのか・・・」と悩んでいました。

そんな折、X(旧Twitter)の投稿から特定のトピックスを抽出するツールを作成したという体験談を伺いました。その話を聞いて一番最初にひらめいたのが、今回のタイトルの企画です。

「能書きはいいからコードだけくれ!」という方はこちら(完成したコードへジャンプ)

最初の狙いと直面した壁

当初の狙いは、「連勝投稿」や「ビヨンド到達デッキ」、さらには「PS選手選手のデッキポスト」まで自動抽出・集計するツールを作ることでした。

しかし、実際にAIと相談しながら仕様を検討してみると、以下の大きな壁にぶつかりました。

  • X APIの無料枠制限: 無料枠では取得制限が厳しすぎる
  • アカウント認証の壁: Xの仕様上、ログインやAPI認証が必須で無料での自動化が非常に難しい

そこで今回はAIと対話して代替案を模索し、Yahoo!リアルタイム検索(画像・動画タブ)を経由することで、完全無料で動く仕組みを作ることにしました!

ちなみに筆者の開発環境は低スペックなChromebookですが、処理はすべてクラウド上のGoogle Colab側で実行されるため、端末のスペックに関係なく動きます。ハイスペックPCを持っていなくても、誰でも全く同じ環境で作成・実行できます!

プログラミングの知識が少なくても、AIに指示を出すだけで実用的なツールが作れる過程を含めてご紹介します。


この記事はこんな方におすすめ

  • とにかく無料でAIを使って実用的なツールを作ってみたい
  • Shadowverse: Worlds Beyond(シャドバWB)をプレイしており、最新のトレンド・連勝デッキを簡単に知りたい
  • PythonやスクレイピングのコードをGoogle Colabでサクッと動かしてみたい
  • スペックの低いPCやChromebookで開発に挑戦してみたい

作ったツールの概要

Yahoo!リアルタイム検索(画像・動画タブ)から #シャドバWB 連勝 などのキーワードを含む投稿を自動で抽出し、クラス別(各クラス最大5件)・連勝数別に整理したMarkdownファイルを生成するツールです。

主な機能

  • 5連勝以上の投稿のみを厳選(低連勝や関係のないノイズを除外)
  • 各クラス最大5件まで自動ピックアップ
  • 画像付き投稿(デッキレシピ掲載)を優先抽出
  • 投稿日時の正規化(「昨日 15:14」などの相対表記を「8月31日 15:14」のような具体日時に自動変換)
  • ユーザー名やUIノイズの整形
  • クラスの自動判定(本文内のテキストから使ったクラスを高精度に分析)
  • Google Colab対応(ライブラリやブラウザのインストール状態を判定し、2回目以降は爆速起動)

開発環境・使用技術

  • 手元PC: 低スペックChromebook(ブラウザが動けばOK!)
  • 実行環境: Google Colaboratory / Gemini(無料枠でOK)
  • 言語: Python 3.x
  • 主要ライブラリ:
    • playwright: ブラウザ自動操作・動的ページのスクレイピング
    • pandas: データの重複除去・整形
    • re / datetime: 正規表現による日時・連勝数・クラス判定

🤖 AI(Gemini)との開発プロセス

最初から完璧なコードが出たわけではなく、狙いの実現可否も含めてAIと何度も対話しながら段階的に機能を磨き上げていきました。

  1. 要件相談と代替案の決定
    • 「PS選手の投稿や連勝ポストをXから無料で集めたい」と相談したところ、X直接の取得は無料枠では厳しいと判明。AIから「Yahoo!リアルタイム検索を経由する」という実現可能な代替案を提案してもらい、方向性を決定。
  2. 基本機能の実装指示(スクレイピング)
    • 方針に基づき、「Yahoo!リアルタイム検索からシャドバの連勝ポストを取得して、Markdown出力するコードを作って」と依頼。
  3. 精度向上とノイズ除去のチューニング
    • 「5連勝以上の画像付き投稿だけに絞りたい」「配信告知や『連敗』などのノイズを除外してほしい」「各クラス最大5件までにまとめたい」と追加要望を出してフィルタリングロジックを作成。
  4. 出力形式と使い勝手の改善
    • 「『昨日 15:14』みたいな相対時間を具体的な日時に変換して」「毎回インストールが走ると遅いから、すでにインストール済みならスキップできるようにして」と伝えることで、実用性を高めていきました。

このように、「作りたいこと」や「直したいところ」を普段の言葉で伝えるだけで、AIが課題解決の提案からコードの書き換えまでサポートしてくれました。


🛠️ 使い方・導入方法(Google Colab)

Google Colabを使えば、自分のパソコンにプログラミング環境を作ることなく、ブラウザ上だけで完全無料で実行できます。

  1. Google Colabを開く
    Google Colaboratory にアクセスし、「ノートブックを新規作成」をクリックします。
  2. タイトルを変更しておく
    画面左上の「Untitled0.ipynb」を**シャドバWB_連勝デッキ検索.ipynb**などの分かりやすい名前に変更しておきましょう。
  3. コードを貼り付ける
    表示されたセル(コード入力欄)に、下記で紹介している「完成したコード」をそのままコピー&ペーストします。
  4. 実行する
    再生ボタン(▶)または Ctrl + Enter (Cmd + Enter) を押して実行します。

Screenshot 2026-09-01 15.44.46.png

💡 次回以降もっと楽に使うテクニック
ブラウザの「☆(ブックマーク)」にこのページを登録しておけば、次回からはページを開いて「再生ボタン(▶)」を押すだけで一発で最新の連勝デッキを取得できます!コードの貼り付け直しも不要です。

初回のみ必要なライブラリやブラウザの自動インストールが行われます。2回目以降は判定処理によりスキップされ、数秒で抽出処理へと進みます。


完成したコード

コード全体はGistにまとめました。以下のリンクからご覧いただけます。

🔗 シャドバWB_連勝デッキ検索.py(GitHub Gist)

コピーしてGoogle Colabのコードセルにそのまま貼り付けて実行してください。

生成結果の確認

実行が完了すると、Colabの左メニュー「ファイル(フォルダアイコン)」内に シャドバWB連勝デッキ(日付).md が出力されます。
Screenshot 2026-09-01 16.06.02.png

ダブルクリックしてプレビュー表示すると、以下のようなクラス別(各クラス最大5件)・連勝数別に整理された一覧が確認できます。
Screenshot 2026-09-01 16.17.33.png

まとめ

今回はシャドバWBの連勝デッキ検索ツール作成を通して、AIを使ったツール作成の実践・解説してみました。

  • 作りたいツールの概要を提示する
  • 実際に動かしながら機能の修正と追加を行う

この2点さえ押さえておけば、プログラミング知識が少なくてもツールを形にすることができます。
さらにスムーズに作成するためには、より具体的な概要を提示したり、AIとの効果的な対話(プロンプト)のコツを掴んだりすることが鍵になってきますが今回はここまで。

まだ自動化や取得精度の面で向上できる余地はあるので、今後は有料APIの活用やさらに高度なフィルタリングなど、より便利な仕組みへのアップデートにも挑戦してみたいと思っています。

次回の記事はこちら:

※本ツールは個人利用および技術検証を目的としており、取得データの再配布等は行っていません

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?