ホームページ >バックエンド開発 >Python チュートリアル >Python で不動産データをスクレイピングして機会を見つける

Python で不動産データをスクレイピングして機会を見つける

DDD
DDDオリジナル
2025-01-16 12:09:58582ブラウズ

Scraping real estate data with Python to find opportunities

このチュートリアルでは、Python のリクエスト ライブラリを使用して API から不動産データを収集する方法を説明します。また、フィルターを適用して、最近値下げされたお買い得の可能性のある物件を取得する方法も学びます。


はじめに

素晴らしい不動産投資の機会を探す場合、最近の価格下落が最も重要な指標の 1 つとなることがよくあります。これらのプロパティをすばやく表示するツールがあれば、時間を大幅に節約でき、他の人に気付かれる前に有利なスタートを切ることができる場合があります。

この記事では次のことを行います:

  1. リクエストを使用した不動産 API との対話の基本について説明します。
  2. 特に価格変更クエリに焦点を当てて、クエリ パラメーターを使用して結果をフィルターする方法を学びます。
  3. 返されたデータを解析し、簡潔な形式で表示します。

要件

  • インストール済みPython 3
  • ターミナルまたはコマンドラインプロンプト
  • Python リクエスト ライブラリの基本を理解している
  • API キー (API で必要な場合)

ステップ 1: API を理解する

使用する API は次のデータを返す場合があります:

  • プロパティ ID
  • タイトルまたはアドレス
  • 価格
  • 場所
  • 過去の価格変化
  • その他の関連情報

主要なクエリパラメータ

この API は、結果のフィルタリングに役立つ複数の クエリ パラメータ をサポートしています:

参数 类型 描述
**includedDepartments[]** 数组 按部门过滤。示例:departments/77
**fromDate** 日期 仅检索在此日期之后列出(或更新)的房产。
**propertyTypes[]** 数组 按房产类型过滤。示例:0代表公寓,1代表房屋,等等。
**transactionType** 字符串 0代表出售,1代表出租,等等。
**withCoherentPrice** 布尔值 仅检索价格与市场价格一致的房产。
**budgetMin** 数字 最低预算阈值。
**budgetMax** 数字 最高预算阈值。
**eventPriceVariationFromCreatedAt** 日期 创建价格类型事件的日期——包含在内。
**eventPriceVariationMin** 数字 价格变化的最小百分比(负数或正数)。
価格が下落した**物件を見つける**ために、**eventPricevariation** パラメーターに特別な注意を払います。

ステップ 2: リクエストを作成する

以下は、Python のリクエスト ライブラリを使用してエンドポイントをクエリするためのスクリプトの例です。特に X-API-KEY が必要な場合は、必要に応じてパラメータとヘッダーを調整します。

<code class="language-python">import requests
import json

# 1. 定义端点URL
url = "https://api.stream.estate/documents/properties"

# 2. 创建参数
params = {
    'includedDepartments[]': 'departments/77',
    'fromDate': '2025-01-10',
    'propertyTypes[]': '1',    # 1可能代表“公寓”
    'transactionType': '0',    # 0可能代表“出售”
    'withCoherentPrice': 'true',
    'budgetMin': '100000',
    'budgetMax': '500000',
    # 关注价格变化
    'eventPriceVariationFromCreatedAt': '2025-01-01',  # 从年初开始
    'eventPriceVariationMin': '-10',  # 至少下降10%
}

# 3. 使用API密钥定义标头
headers = {
  'Content-Type': 'application/json',
  'X-API-KEY': '<your_api_key_here>'
}

# 4. 发出GET请求
response = requests.get(url, headers=headers, params=params)

# 5. 处理响应
if response.status_code == 200:
    data = response.json()
    print(json.dumps(data, indent=2))
else:
    print(f"请求失败,状态码为{response.status_code}")</code>

重要なパラメータの説明

eventPricevariationMin = '-10'

これは、少なくとも 10% の値下げを検討していることを意味します。

eventPricevariationMax = '0'

これを 0 に設定すると、価格上昇または 0% を超える変更が発生した宿泊施設は含まれなくなります。基本的に、マイナスまたはゼロの変化を捕捉します。

? ヒント: 戦略に合わせて最小値/最大値を調整します。たとえば、-5 と 5 には、±5% 以内の価格変動が含まれます。

潜在的な落とし穴と注意事項

  1. 認証: 常に有効な API キーを使用していることを確認してください。一部の API にはレート制限や使用量の割り当てもあります。
  2. エラー処理: API がダウンしている、またはパラメーターが無効な状況を処理します。
  3. データ検証: API は一部のリストに対して不完全なデータを返す場合があります。欠落しているフィールドがないか常に確認してください。
  4. 日付形式: fromDate と toDate が API で認識される形式 (例: YYYY-MM-DD) であることを確認してください。
  5. 大規模なデータセット: API が数百または数千のリストを返す場合、ページネーションが必要になる場合があります。ページや制限などのページングパラメータが API ドキュメントに存在するかどうかを確認します。

概要

これで、価格が下落した不動産に焦点を当てて、不動産データをクロールするための基本的な Python スクリプトが完成しました。この方法は、不動産に投資したい場合、または単に市場動向を追跡したい場合に非常に強力です。

いつものように、パラメータを特定のニーズに合わせて調整してください。このスクリプトを拡張して、結果を価格で並べ替えたり、高度な分析を統合したり、データを機械学習モデルに組み込んでより深い洞察を得ることができます。

狩猟を楽しんでください。隠された宝石が見つかりますように!


さらに読む

  • Python はドキュメントをリクエストします
  • 不動産データ API の比較
  • ストリームエステート API
  • 不動産データAPIのポイント

以上がPython で不動産データをスクレイピングして機会を見つけるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。