← 制作記一覧へ

ホテル検索ツールを作った話(全国約3.7万軒を地域横断で一括検索)

公開: 2026-04-20 · #2 / 最終更新: 2026-06-01 ホテル検索楽天トラベル家族旅行

📌 記事の取り扱いについて:本記事は公開当時の体験・気づきをまとめたものです。現在のツール数・プラン数・対象年齢・記事数・仕様とは異なる場合があります。最新の内容は各ツールページをご確認ください。ツールや外部サービスの仕様・料金は変更されることがあるため、利用前には各公式情報も併せてご確認ください。記載に誤りを見つけられた場合はお問い合わせフォームよりご連絡いただけると助かります。

家族旅行のホテル探しで毎回困っていたのが、「色々な地域を一括で比較できない」ことでした。楽天トラベルもじゃらんも、検索は基本的にエリアを1つ選んでから始まります。「箱根でも伊豆でも軽井沢でもいい、家族で泊まれる広い部屋がある宿を、条件のいい順に見たい」── そういう 地域をまたいだ横断検索ができるサイトが見当たらない。それなら自分で作ろう、と思ったのがきっかけです。

全国約3.7万軒のホテルを1つのデータベースにまとめてしまえば、エリアを問わず一括で比較できる。家族向けのフィルター(部屋サイズ・所要時間など)も自由に組み合わせられる ── そんなツールを目指しました。

何ができるツールか

hotel.tool-koubou.com で使えます。

  • 全国 約3.7万軒を地域横断で一括検索(エリア指定不要、複数地域を同時に絞り込み比較できる)
  • 都道府県・エリアで絞り込み(47都道府県+箱根・軽井沢などの観光エリア単位でも選べる)
  • 部屋の最大サイズ・最小サイズ でフィルタ(家族向けの大部屋を探せる)
  • 東京駅・新大阪駅・名古屋駅の3起点から所要時間 で絞り込み(車・新幹線・飛行機・在来線特急から選択)
  • 口コミ総合評価・口コミ件数・⭐5比率 での絞り込み
  • 温泉・客室露天風呂などの条件指定
  • 「いい宿を探す」モード(部屋40㎡以上・口コミ4以上・温泉ありをワンクリックでセット)
  • 気になるホテルに メモ・評価(候補/検討中/却下) をつけて管理
  • 楽天トラベル連携で 空室状況と参考価格 をワンクリック取得(最終的な料金・予約可否は楽天側のページで確認)
  • ガイドページ(「行き先が決まっていなくても探せる」使い方の案内+プリセット条件)
  • 特集ページ(客室露天風呂の宿・広い温泉宿・高評価宿など、テーマ別の切り口+47都道府県ヒートマップ)

作り方

AIに「楽天トラベルのWeb APIで全ホテルのデータを取ってきて、ローカルで検索できるようにしたい」と伝えました。すると、以下を組み立ててくれました:

  1. 楽天ウェブサービスAPIから エリア別全ホテル取得 スクリプト
  2. 楽天APIで取得できる情報を中心に、補足的に公開ページの表示情報も確認しながら、部屋サイズ情報を整理する処理
  3. 全国47都道府県のホテルを 2つのJSONファイル(検索用の軽量版+詳細データ)に分割して整理。ページを開いた瞬間にまず軽量版を読み込んで検索を開始できるようにし、残りの詳細はバックグラウンドで取得する仕組み
  4. 絞り込み・ソート機能つきの検索UI

私がやったのは「こういう条件で検索したい」「この項目でソートさせて」と伝え続けることだけです。

こだわりポイント

地域指定なしの「全国一括検索」

楽天トラベルもじゃらんも、検索フローはまず「エリアを選ぶ」ところから始まります。本ツールはその発想を逆にして、条件(部屋サイズ・所要時間・評価)を先に決めて、地域は結果から選ぶ 形にしました。「箱根か伊豆か軽井沢か、まだ決めかねている」段階の比較に向いています。同じことができるサイトを、私は他に見つけられませんでした。

文章で読める交通条件フィルタ

「東京駅から新幹線で120分以内、最寄りの駅・空港から車で30分以内のホテル」── そのまま読める文章の形で交通条件を指定できます。何を設定すれば何が起きるのかが一目で分かるので、初めて使う人にも迷いにくい作りになっています。

「確認不可」と「満室」を区別した空室判定

楽天APIでは、予約サイトの応答状況に応じて not_found(満室)か too_many_requests(レート制限)かでエラーが返ります。当初は全部「満室」扱いにしていたのですが、レート制限の場合は「確認不可(❓)」と表示する ように改良しました。

「家族向け」に特化した絞り込み

  • 部屋サイズのフィルター
  • ミキハウス「ウェルカムベビーのお宿」公式サイトへの導線(具体的な認定施設リストはミキハウス側のページで確認)
  • 子連れ不可・大人専用の宿は別枠表示

運用上の工夫

データが古くなるので、週に1回・土曜日に自動リマインドメール が届くようにしました。Cloudflareのスケジュール機能で、データの鮮度を監視しています。

表示価格・空室について

楽天ウェブサービスAPIから取得した情報をもとに表示していますが、料金・空室状況・キャンセルポリシーは常に変動します。本ツール上の表示はあくまで参考情報で、最終的な料金や予約可否は楽天トラベルの該当ページでご確認ください。データ自体も週1回の更新で運用しているため、リアルタイムの値ではない点もご承知おきください。

収益化

ホテル名のリンクは楽天トラベルアフィリエイト経由です。「広告」表記 もつけて透明性を確保しています。


※ この記事は 2026-05-26 時点の情報をもとに更新しています。機能は随時追加・改善しています。


← 他の制作記を見るトップお問い合わせ