物件を調べる(check.py)
6-1. まず1件だけ試してみる
①物件名を指定して、4サイト(ITANDI BB/いえらぶBB/いい生活/レインズ)+準備中のATBBまとめて掲載を調べる。
python3 check.py "グランドメゾン新宿"
③成功するとこう表示される(イメージ例)
物件名: グランドメゾン新宿
[ITANDI BB] 掲載あり -
- グランドメゾン新宿 305号室 | 12.0万円 | ○○不動産 | FAX 03-1234-5678
[いえらぶBB] 掲載なし -
[いい生活(いい生活Square)] 未ログイン - ログインセッションがありません。先に python3 login.py es を実行してください
[レインズ] ⚠ 要再ログイン - .envにREINS_ID/REINS_PASSWORDを設定してください(README参照)
サイトごとに1行ずつ結果が出る。「掲載あり」の行には、建物名・部屋番号・賃料・元付/管理会社(分かればFAXも)が追加で表示される。
④よくあるエラー:未ログインと出たらSTEP 5のログインをやり直す。要再ログイン(.envに...を設定してください)と出たらSTEP 4の.envの値を見直す。
6-2. 号室まで指定する
python3 check.py "グランドメゾン新宿" --room 201
--roomのあとに号室を書くと、その部屋だけに絞って調べる。
6-3. 特定のサイトだけ調べる
python3 check.py "グランドメゾン新宿" --site itandi,ielove
サイト名はitandi / ielove / es(いい生活) / reins(レインズ) / atbb(ATBB・準備中)から、カンマ区切りで必要な分だけ指定する。--siteを省略すると4サイト+ATBBすべてを調べる。
6-4. レインズで都道府県を指定する
python3 check.py "グランドメゾン新宿" --site reins --pref 神奈川県
--prefを省略すると「東京都」で検索される。レインズ以外のサイトでは無視される。
6-5. 結果をJSON形式で受け取る(他のプログラムに読み込ませたいときなど)
python3 check.py "グランドメゾン新宿" --json
機械可読な{"bukken": ..., "room": ..., "results": [...]}形式のJSONが出力される。
6-6. 複数の物件をまとめて調べる(バッチモード・その1:直接並べる)
python3 check.py "物件A" "物件B" "物件C"
物件名をスペース区切りで並べるだけで、まとめて調べられる(1件だけの場合と表示形式は変わらない。2件以上を指定すると自動的にバッチモードになる)。
6-7. 複数の物件をまとめて調べる(バッチモード・その2:ファイルで渡す)
①物件名を1行1件で書いたテキストファイル(例:list.txt)を用意する。行の先頭に「1.」「2.」「③」のような番号が付いていても自動で取り除かれるので、そのままでよい。
1.レインボーハイツ
2. サンシャイン新宿
③ グリーンヒルズ渋谷
このファイルをlist.txtという名前でbukken-checkフォルダに保存する(open -e list.txtで新規作成・編集できる)。list.txtは.gitignore対象なので、実際の物件名を書いてもGitHubには上がらない。
python3 check.py --file list.txt
③成功するとこう表示される(末尾のサマリー表、README記載の例)
=== サマリー ===
物件名 ITANDI BB いえらぶBB いい生活(いい生活Square) レインズ
------------------ --------- ---------- -------------------------- --------
レインボーハイツ ○ × ○ 要ログイン
サンシャイン新宿 × × × ×
物件ごとの結果が1件ずつ表示されたあと、最後にこのサマリー表がまとめて出る。○=掲載あり、×=掲載なし、「要ログイン」=ログインし直しが必要、「エラー」=失敗。
⚠ まとめて調べられるからといって、何十件も一度に流し込まないこと。サイトに負荷をかけたり、アカウントが止められたりするおそれがあるため、数件〜十数件程度の常識的な範囲にとどめる。
結果ステータスの読み方(早見表)
| 表示 | 意味 |
掲載あり(found) | 掲載あり。建物名・部屋番号・賃料・元付/管理会社などが表示される。 |
掲載なし(not_found) | 掲載なし。 |
未ログイン(no_login) | ITANDI BB・いい生活で、まだlogin.pyを実行していない状態。STEP 5を行う。 |
要再ログイン(login_required) | セッション切れ、または.env未設定。STEP 4・5を見直す。 |
準備中(preparing) | ATBBのみ。アダプタ未実装のための正常表示。 |
エラー(error) | 失敗。もう一度同じコマンドを実行してみて、それでも直らなければSTEP 9へ。 |
実行のたびにlogs/checks.jsonlへ自動で記録が残るので、自分でメモを取る必要はない。