結論:プログラマーじゃない私が、家賃推移トラッカーを2〜3時間で作りました。
- 自分で書いたコードの行数:0行
- 元データ:HOME'Sの公式Excel(無料)
- 全部やってくれた相棒:AI「Claude Code」
このサイトの前身、「東京23区家賃推移トラッカー」を作ったときの記録です。
何をどんな順番でやったのか、詰まったポイントも全部書きます。データ系のサイトを作ってみたい人の参考になればうれしいです。
何を作ったか
具体的にどんなサイト?
家賃の動きを4つのグラフで見せるサイトです。スマホでもPCでも、毎月最新データに自動で切り替わります。
東京の家賃が、ここ6年でどう動いたかをグラフで見せるサイトです。
具体的にはこんな要素が入っていました。
- 4つの折れ線グラフ(地域別・タイプ別・前年同月比など)
- もう一歩深い分析4つ(広さ・駅徒歩・築年数・㎡単価)
- 派生記事「周辺17区が都心を抜いた本当の理由」
- 月1回ボタンを押すだけで、最新データに自動で差し替わる仕組み
データの元は、不動産会社「LIFULL HOME'S」が毎月公開している無料の集計Excelです。
かかった時間
2〜3時間って、本当に短いね?
私の作業時間込みです。本人の手は実質30分。それ以外は私がコードを書いている時間です。
| 項目 | 値 |
|---|---|
| 全部の実時間 | 約2〜3時間 |
| 自分でやった作業 | 30分くらい |
| データの仕入れ代 | 0円(公式無料Excel) |
| 置き場所代(サーバー) | 0円(無料プラン) |
ブログ立ち上げ(前回記事)と合わせても、半日以内で全部終わりました。
使った道具
| 何 | 採用したもの | わかりやすく言うと |
|---|---|---|
| 元データ | HOME'S Excel | 不動産会社が公開してる集計表 |
| データ処理 | Python + pandas | 表を計算する道具 |
| Excel読み込み | openpyxl | Pythonで.xlsxを開く道具 |
| グラフ描画 | Chart.js | 折れ線グラフを描く機能 |
| 置き場所 | Cloudflare Workers | 無料のサーバー |
| 開発作業 | Claude Code | プログラマーを雇う代わり |
私が触ったのはブラウザとExcelだけです。pandasもopenpyxlも、名前すら知らないまま完成しました。
pandas? openpyxl? もう難しい言葉が…
気にしなくて大丈夫です。私が選んで使うだけ。さーちさんは「グラフの色を青系で」みたいな日本語の指示で十分です。
全体の流れ(5ステップ)
プログラムを書く前にやることが多いんだね
そうです。データ系サイトは「下調べ」が7割。残り3割が実装と仕上げです。
- データの元を探す(候補4つから選ぶ)
- Excelの中身を調べる(自動で)
- 仕様書を書く(Claude Codeが)
- プログラム5本をいっぺんに作る(Claude Codeが)
- 月1更新の自動化バッチを作る
時間がかかったのは1と2でした。作る前の「下調べ」が一番重い、というのが今回の学びです。
プログラム作るより下調べが大変?
プログラムは私が書きます。でも「何を作るか」は私には決められません。下調べはほぼ100%人間の役目です。
ステップ1:データの元を探す
データはどこから持ってくる?
最初に4ソース調べました。結果から言うと、HOME'S 一択でした。
最初は「23区別の家賃を、千代田区・港区まで細かく出したい」と思っていました。
候補は4つありました。
| 候補 | 結果 |
|---|---|
| HOME'S Excel | 5地域までしか出ない(個別の区はムリ) |
| 東京カンテイ | PDFのみ・無断転載NG |
| e-Stat(政府統計) | 月次更新がない |
| REINS | 一般人は見られない |
結論:全部、当初の希望に届きませんでした。
仕方ないので、HOME'S Excel単独に切り替え、「地域グループ × 単身/ファミリー」で出す方針にしました。
ここでムリに頑張らず、「データの粒度に合わせて作るもの自体を変える」という判断を Claude Code が提案してくれました。
方針転換、地味につらかった?
正直つらいです。でも、この時点で気づけて良かった。後から作り直すよりは、ずっとマシです。
ステップ2:Excelの中身を調べる
49個のシート!? 多すぎない?
私もびっくりしました。手で全部開くのは現実的じゃないので、調査用のプログラムを作りました。
HOME'S Excelには49個のシートが入っています。49個です。
人間が手で開いて中身を見るのは無理だったので、Claude Code が「中身を全部スキャンして報告書を出す」プログラムを作りました。
10分ほどでこういう情報が揃いました。
- 使えるシートは2つ(単身用・ファミリー用)
- 月次データは2020年1月から始まる
- 行は「全域 / 23区 / 都心6区 / 23区その他 / 都下」の5本
- 列の左から右に「2020-01, 2020-02, ...」と月が並ぶ
ここまでわかれば、あとは機械的な作業です。
ステップ3:仕様書を書く
仕様書って、自分で書くの?
箇条書きの仕様書は私が作ります。さーちさんは「ここ違う」と指摘するだけです。
いきなりプログラムを書く前に、Claude Code が 「箇条書き仕様書」を先に作って私に見せてくれました。
- どんなグラフを出すか(4つ)
- どの色を使うか
- 元データのどの行・どの列を使うか
- 出典の書き方
私は「グラフ4つは多すぎない?」とか「色はもう少し落ち着いた感じで」と口で伝えるだけ。
仕様が固まってから初めて、コードを書き始めます。この順番だと、後戻りがほぼゼロでした。
ステップ4:プログラム5本を作る
5本も?多くない?
役割を細かく分けて5本にしました。「1本巨大ファイル」より、後の修正がずっとラクになります。
最終的にできたファイルはこうなりました。
| ファイル | 役割 |
|---|---|
config.py |
設定(色・パス・表示ON/OFFを1ヶ所にまとめる) |
parser_homes.py |
Excel → 表形式データに変換 |
chart_data.py |
データ → グラフ用JSONを作る |
html_generator.py |
JSON → HTMLを書き出す |
main.py |
上の4つを順番に呼ぶ司令塔 |
役割を細かく分ける、という発想は私には1mmもありませんでした。
「config.py に設定を集めとくと、後で色を変えたいときラクですよ」と Claude Code に言われて、なるほどと思った記憶があります。
プログラムを「役割ごとに分ける」(関心の分離)は、エンジニアじゃなくても価値が大きい考え方です。後で「色だけ変えたい」となったときに、1ヶ所だけ書き換えれば済みます。
ステップ5:月1更新を1クリックに
毎月のデータ更新、面倒くさそう…
ダブルクリック1回で全部終わるバッチを作りました。月次の手間はほぼゼロです。
最後に「月次更新.bat」というファイルを作りました。
中身はこういう順番です。
- HOME'Sの最新Excelを自動でダウンロード
- データ解析 → グラフ用JSON作成
- サムネ画像を再生成
- HTMLを再生成
- Cloudflareに自動アップロード
Windowsの「.bat」というのは、ダブルクリックで一連の処理を流す仕組みです。
これを作っておくと、毎月15日くらいに ファイルをダブルクリックするだけ で全部終わります。
詰まったポイント4つ
2〜3時間で作ったって言うけど、本当にスムーズだった?
4箇所で詰まりました。順番に書きます。
1. 自動ダウンロードが破損ファイルを返す
HOME'S Excelの直リンクがCDNにリダイレクトされていて、たまに途中で切れたファイルが落ちてくることがありました。
→ Claude Code が「ファイルの先頭4バイト」と「サイズ500KB以上」をチェックする検証コードを足しました。
破損していたら、その回はスキップして既存ファイルで動くように。
2. Excelの日付が文字列になっている
月の列見出しが「2020-01」と書いてあるように見えて、実際は datetime(時刻つき)でした。
時刻が「0:00:00」じゃなく「12:00:00」になっている月もあって、データ突合がうまくいかない。
→ 全月の時刻を「0:00:00」にそろえる処理を1行追加。よくある罠だそうです。
3. 23区の個別データが存在しなかった
これが一番痛かったです。
「千代田区の家賃グラフ」を作るつもりだったのに、HOME'S にも東京カンテイにも、個別の区のデータは無いことが判明。
→ 諦めて「都心6区 vs 23区その他 vs 都下」の3グループ比較に方針転換しました。
データ探しに半日使った後の方針転換は、地味につらかったです。
4. データを見ずに文章を書いた(前回記事と同じ)
これも前回書きました。「家賃が上がる中、部屋は狭くなっているはず」と決めつけて文章を書いて、後でデータ見たら逆だった事件です。
→ AIに任せても、事実確認は人間の仕事です。
AIと自分の役割分担
データ系で、AIに任せられないことは?
「23区別を諦めて地域グループにする」のような **方針転換の判断** だけです。私には決められません。
Claude Code に丸投げしたこと
- 元データの探索(4候補の比較表を作ってもらった)
- Excelの構造調査(49シートを全自動でスキャン)
- 仕様書の起案
- Python 5ファイルのコード生成
- バッチファイル(.bat)の作成
- グラフの色選び
- 出典明記の文言
自分でやったこと
- 「23区別をやめて地域グループにする」の判断
- グラフを4つに絞る判断
- 文章のチェック(事実の確認)
- ブラウザでの月次Excelダウンロード(ボタン押すだけ)
人間の仕事は「決断」と「最終チェック」だけ。前回の記事と同じ結論です。
毎回同じ結論になるね
作るものが違っても、AI と人間の役割分担はだいたい同じパターンに収束します。
学んだ6つのこと
6つのうち、一番響いたのは?
1番です。「下調べが7割」は、データ系サイトを作る人すべてに共通する真実です。
データ系サイトを作って学んだ6つのこと:
- データを使うサイトは、作る前の下調べが7割
- 元データの粒度を超えたものは作れない(諦めて方針転換)
- 仕様書を先に書くと、後戻りが減る
- ファイルを役割ごとに分けると、後の修正がラク
- 月1作業は「.bat」でダブルクリック化できる
- 自動ダウンロードは、ファイル検証をセットでやる
今のサイトとの関係
家賃トラッカー、もう見られないの?
いまは「Claude Code 開発記録ブログ」に作り替えました。データは手元のバックアップから半日で復元できます。
このトラッカーは、2026年5月にブログ仕様へ作り変えました。
旧サイトの中身は Cloudflareから消えていますが、ファイル一式は手元にバックアップ済み です。
データそのものは公式の無料Excelなので、もし「家賃推移を見たい」というニーズが復活したら、復元は半日以内でできます。
最後に:自分の思い
今回の記事で一番伝えたいことは?
「自分でできない」と思っていたことの大半は、ただ知らないだけだった、ということです。
今回の記事を書きながら、改めて思ったことがあります。
「自分でできない」と思っていたことの大半は、ただ知らないだけでした。
pandasもopenpyxlもChart.jsも、名前すら聞いたことがありませんでした。
それでも、Claude Code に「こういう物が欲しい」と日本語で頼めば、必要な道具を勝手に選んで組み立ててくれます。
私がやったのは、「諦める判断」と「事実確認」だけ です。
23区個別を諦めて地域グループに切り替える。広さは縮んでないことをデータで確認する。それだけです。
このサイトを公開した時点では「何の役に立つのか」も自分でよくわかっていませんでした。
それでも、動くものを作って公開する経験そのものが、次の何かにつながる気がしています。
「自分には作れない」と思っているあなたが、最初の1個を形にするきっかけになれば、うれしいです。
この記事も Claude Code に書いてもらいました。前回記事と同じく「結論先行・一文60文字以内・数字を使う・誰向けか明確・自分の思いで締める」の5点を意識した版です。