30秒で分かる要点
rank-checkとは?
Rank Checkは、Pythonを中心に設計・実装したプロジェクトです。 主にPythonを使用し、公開コミットから機能追加と改善を積み重ねた過程を確認できます。
01 / 概要
プロジェクトの概要と目的
rank check(campsignal.jp)— モール横断の検索順位ウォッチ リポジトリ名は rank check だが、公開先は campsignal.jp。 自店の商品が、モールの検索で何番目に出るかを毎日記録する。 公開先: https://campsignal.jp 配信: GitHub Pages( dist/CNAME は scripts/build site.mjs の SITE DOMAIN から作る) ドメインは SITE DOMAIN 1箇所で決める。 個別のファイルに書かない 何が他と違うのか APIの並び順ではなく、買い物客が見る検索結果ページの順位を数えている。 楽天もYahooも商品検索APIを公開しているが、その並び順が買い物客の画面と 同じである保証はない。APIの順位を「検索順位」と呼ぶツールは、そこで嘘をつく。 このツールは検索結果ページそのものを読む。2026 09 04 の実測で、 手で数えた順位と一致することを確かめてある。 楽天 「財布 メンズ」 kinoco → 3位(手で数えても3位) Yahoo 「財布 メンズ」 mura → 5位(手で数えても5位) 対応しているモール モール 順位 取り方 楽天市場 ✅ 検索結果ページ(1ページ45件) Yahoo ショッピング ✅ 検索結果ページ(1ページ30件) Amazon ❌ 未対応。PA API の鍵に「180日で3件の売上」が要る Google ⏸ 検索順位の機械取得は規約違反。 Search Console API なら自社サイトの掲載順位を正規に取れる ので、そちらで実装する Google をスクレイピングしない。 競合ツールにはやっているものもあるが、 規約違反でいつ止まってもおかしくない。自社ECサイトを持つ店には Search Console API のほうが正確で、止まらない。 PCとスマホ User Agent を変えると 別のページが返る (実測でサイズも中身も違う)。 ただし そのとき並び順は同じだった。 「スマホでは順位が違う」は、いつも起きるこ
本記事は公開されている構成と main ブランチのコミットを一次情報として整理しています。
02 / 使用技術
使用技術と役割
主要な実装言語として、プロダクトの中心機能を構成します。
03 / 設計
構成から読み解く設計
主な項目は です。
- 単一アプリケーション構成
- 機能単位の責務分割
04 / 変更履歴
コミットから見る実装の変遷
以下は既定ブランチの直近の変更です。リンク先で原文と一次情報を確認できます。
- 順位を記録する33f9886をGitHubで確認 ↗
- 順位を記録するd15efd2をGitHubで確認 ↗
- 順位を記録する29e907aをGitHubで確認 ↗
- 順位を記録する9bf7fe2をGitHubで確認 ↗
- 順位を記録するb4bd986をGitHubで確認 ↗
- 順位を記録する0915125をGitHubで確認 ↗
- 順位を記録する981474dをGitHubで確認 ↗
- 記事を1本置く(モールSEOの勉強会に行く前に調べたこと)ca1a875をGitHubで確認 ↗
- ドメインの状態を見る道具を入れるe372be8をGitHubで確認 ↗
- モール横断の検索順位ウォッチを置く76f64d4をGitHubで確認 ↗
05 / 学び
このプロジェクトから得られる学び
- 変更を小さく記録する
コミット単位で目的を分けると、実装の意図を追跡しやすくなります。
- 構成と技術選定を結び付ける
Pythonの採用理由と各ディレクトリの責務を説明できることが保守性につながります。
- READMEと実装を同時に育てる
説明とコードを近い状態に保つことが、再利用と振り返りを助けます。
06 / よくある質問
よくある質問
rank-checkは何を作るプロジェクトですか?
Rank Checkは、Pythonを中心に設計・実装したプロジェクトです。
rank-checkの主要技術は何ですか?
Pythonを中心に構成されています。
この記事の情報源は何ですか?
公開README、リポジトリ構成、既定ブランチのGitHubコミット履歴です。
コメント
この記事へのコメント
お名前だけで投稿できます。アカウント登録やログインは不要です。 いただいたコメントは確認のうえ公開します。