見出し画像

雑兵の40代工場労働者がClaude APIで「米国株ニュース自動収集ツール」を作った話-所要時間4,5時間


はじめに

私はしがない
一介の工場労働者だ。

プログラミングはほぼ未経験だった。
HTML,CSSを少しかじった程度。

毎週読んで、さらにChatGPTに深掘りさせている

中島聡さんのメルマガ

に触発された。

手を動かせ‼️(エンジニアも非エンジニアもコードかけ)

と。

昨日はToDoアプリを作り、Git・GitHubへの保存作業をやった。

今日は時間があったので、もう一歩進んだものに挑戦した。

Claude APIを使ってニュースを要約・翻訳し、Google RSSでニュースを取得する。

そして自動でアメリカ株のニュースを収集する仕組みを構築した。

その記録をここに残す。

ちなみに、基本はChatGPTに都度相談しながら進めていった。


まずは最小構成から始めた

いきなり全部を作ろうとすると失敗する。

そう思ったので、最初は「GoogleニュースRSSからテスラのニュースを取得するだけ」に絞った。

Python 3.13とVS Codeをインストール(2つとも結構前にしていた。ちゃんと使ってなかったけど)

`tesla_news`というフォルダを作った。

中に`main.py`を置く。

`pip install feedparser`でRSS取得用のライブラリを入れる。

GoogleニュースRSSのURLをブラウザで開くと、XML形式でニュースデータが表示される。

これをPythonのfeedparserで読み込み、タイトルとリンクを一覧表示するコードを書いた。

実行すると、テスラ関連のニュースタイトルがずらりと並んだ。

これでMVP(最小限の動くもの)の第一段階が完成した。

銘柄を4つに増やした

テスラだけで終わらせるつもりはなかった。

Cerebras、Bloom Energy(BE)、Eli Lilly(LLY)も追加した。現在保有してる銘柄。

`feeds`という辞書に4銘柄分のRSS URLをまとめ、ループで一気に取得する形に変更した。

「OR」を使って会社名とティッカーの両方を検索対象に含めることで、取りこぼしを減らした。

実行すると、4銘柄それぞれのニュースタイトルが順番に表示されるようになった。

Claude APIを組み込む

次はニュースをそのまま眺めるだけでなく、要約させる段階に進んだ。

Anthropic Consoleでアカウントを作り、APIキーを取得した。

`pip install anthropic`でライブラリを入れ、APIキーは`.env`ファイルに保存した。

`pip install python-dotenv`で環境変数を読み込めるようにした。

まずはテスラのニュース1件だけをClaudeに送り、日本語で3行要約させるテストを行った。

結果は成功だった。

Claudeは「電池技術発表」「航続距離向上」「EV競争力への影響」というように、簡潔な3行でまとめてくれた。

つまずいた最大のポイント

ここで大きな壁にぶつかった。

Claude APIを使うためのクレジット購入で、支払い方法を登録してもボタンが押せなかったのだ。
(何故か、プログラミングとは違う部分で時間浪費した(笑))

原因が分からず、かなりの時間を溶かした。

ChatGPTに聞いてみたが、解決には至らなかった。

そこでClaudeそのものに質問したところ、原因が判明した。


実際のclaudeの画面

困ったときに聞く相手を変えてみる、というのも一つの解決策だと実感した。

コードの整理にも苦戦した

要約機能をテストするうちに、あちこちコピペを繰り返した。

その結果、どこに何を書いたのか分からなくなった。

これはChatGPTに全文コードを作らせてコピペする方法で乗り切った。

ただしハルシネーションが怖かったので、内容が大丈夫か、(めっちゃチャピーに念押しした。)


ファイル保存とGmail通知まで到達した

要約結果は画面に表示されるだけでは後から見返せない。

そこで`news_summary.txt`に自動保存する仕組みを追加した。

さらに、5件ずつまとめてGmailへ1通送信する機能も組み込んだ。

最終的な流れは以下の通りになった。

GoogleニュースRSS取得。

Tesla・Cerebras・Bloom Energy・Eli Lillyのニュース取得。

Claude(haiku-4-5)で日本語要約。

5件ずつまとめる。

Gmailへ1通送信。

`news_summary.txt`へ保存。

実際のgmailの画面

完成して分かったこと


ここまで作って感じたことがある。

要約は要点を絞りすぎていて、投資判断にはあまり使えないかもしれない。

そもそも長期投資が前提なので、そこまで頻繁にニュースを追う必要もない。むしろ、ノイズになる(笑)

週1〜2回の自動送信は、今回は実現できなかった。(時間切れ)

次回の課題として残した。

「自動」と言っても、PCが起動していてPythonが動いている時にしか動作しない、という当たり前の事実にも今回気づいた。

おわりに

プログラミング未経験の工場労働者でも、RSS取得からAPI連携、AI要約まで一通り動かすことができた。

claudeAPI初課金も!

つまずいたときは、ChatGPTだけでなくClaudeにも聞いてみる。

そうすることで解決の糸口が見つかることもある。


次は

最近、youtubeでよくやってる
dmm canva Ai  ,  Claude Code masterコース
学び放題

みたいなcm

ある程度ChatGPT使って自学できそうなのでやってみようかな。

(なんか普段こういう講座に金かける人間をバカにしてるような人たちがyoutubeのcm出て

小銭稼いでるのが、なんか腹立つから、

自学で勉強しようかな)

次の連休かお盆に。

関連記事


いいなと思ったら応援しよう!