Route C : Phase 2

C-03:動画ハンターの実装

YouTube/TikTokダウンローダー - コンポーネント開発の第一歩

FXの情報収集において、YouTubeやTikTokは宝の山です。
このステップでは、動画のURLを渡すだけで、その中身をPCに保存し、AIに解析させるための準備を自動化します。

【設計のポイント】 機能ごとにファイルを分ける「コンポーネント設計」を実践するため、今回はメインの tab_scout.py を直接編集するのではなく、新しい部品ファイルを作成します。

1. 実装する機能 (Video Scout)

  • yt-dlp連携: 世界最強の動画ダウンローダーをPythonから制御し、YouTube/TikTokの動画を高品質で保存します。
  • プロンプト自動生成: ダウンロードした動画をAI Studioに渡すための「分析指示書(プロンプト)」を、動画タイトルやURLを埋め込んだ状態で自動作成します。
  • コンポーネント化: 動画収集機能は gui/tabs/scout_video.py という独立したファイルに実装し、親タブから読み込む形にします。

2. 進化の呪文(AIへの指示)

以下のプロンプトをコピーし、AI Studioに貼り付けて実行してください。
出力されたコードと、AI自身が生成した「実装手順」に従って、ツールをアップグレードしましょう。

PROMPT
あなたはプロのPython開発者です。 現在作成中の「FX_Trend_Hunter」に対し、動画収集機能(Video Scout)を「コンポーネント分割設計」で実装してください。 【要件定義】 1. **バックエンド実装 (`lib/lib_video_scout.py`):** - `yt-dlp` ライブラリを使用して、指定されたURLの動画を `input/video/` にダウンロードする関数を作成。 - 動画タイトルや説明文を取得し、それを `prompts/video_analysis_template.txt` (テンプレート)に埋め込んで、`output/prompt_for_ai_studio.txt` を生成する機能。 2. **GUI部品実装 (`gui/tabs/scout_video.py`):** - `ttk.Frame` を継承した `VideoScoutPanel` クラスを作成。 - 動画URLを入力するテキストボックスと、「ダウンロード&プロンプト生成」ボタンを配置。 - 処理の進捗を表示するログエリアを作成。 - `threading` を使用して、重いダウンロード処理でGUIが固まらないようにすること。 3. **親タブへの組み込み (`gui/tabs/tab_scout.py`):** - 作成した `VideoScoutPanel` をインポートし、画面内に配置するように修正してください。 4. **テンプレート作成 (`prompts/video_analysis_template.txt`):** - AI Studio用の分析指示書のひな形を作成。「あなたはFXアナリストです。以下の動画を分析し...」といった内容。 【重要:出力形式の制約】 - Pythonコード内の文字列リテラルやコメントであっても、**バッククォート3つ(```)は絶対に使用しないでください。** - AI Studioでの表示崩れを防ぐため、コードブロックの囲み記号は出力せず、ファイル名とコード本体のみを提示してください。 【出力ルール】 1. 作成・修正が必要なファイル名と、そのコード全文を提示してください。 2. ファイルマーカーの出力は禁止。ファイル名だけをコードブロックの外に表示し、ファイルは省略禁止でお願いします。 3. **最後に、ユーザーが実行すべき「実装手順」を箇条書きで必ず出力すること。**

3. 実装と動作確認

AI Studioの出力結果の中から、AI自身が生成した「実装手順」を見つけて、その指示通りに作業を進めてください。

→ YouTubeのURLを入力して実行し、input/video/ に動画が保存されれば成功です!


動画という「重い情報」を手に入れました。
次はこの情報に、リアルタイムな「市場の空気」を掛け合わせます。

C-04 (トレンドハンターの実装) へ進む