Amap 開発者プラットフォーム Python アプリケーションの実践: 周囲のビジネス環境情報をクエリするためのクイック スタート

Amap 開発プラットフォームは、地図データの開発と分析を容易にする豊富な API インターフェイスを提供します。ビジネス分析データの収集では、Amap開発プラットフォームの周辺クエリ機能を利用して、周辺のビジネス街やコミュニティなどの情報を迅速に取得し、ビジネス上の意思決定をデータでサポートすることができます。

ニーズに応じて、次のオプションをお勧めします。

  1. Amap オープン プラットフォームにアカウントを登録し、キーを取得するためのアプリケーションを作成します。
  2. Amap開発プラットフォームの周辺クエリAPIを利用し、設定したキーワード(「ショッピングモール」、「コミュニティ」など)に基づいてクエリを実行します。
  3. クエリ結果をもとに、要件を満たすビジネス街やコミュニティ情報を選別し、整理・編集します。
  4. 統計結果を Excel または CSV 形式にエクスポートして、その後の分析やレポートの作成を容易にします。

具体的な手順は次のとおりです。

  1. Amap オープン プラットフォームにアカウントを登録し、キーを取得するためのアプリケーションを作成します。
  • AMAPオープンプラットフォームの公式Webサイト(https://lbs.amap.com/)にアクセスし、アカウントを登録します。
  • コンソールで新しいアプリケーションを作成し、アプリケーション名などの情報を入力してキーを取得します。
  • Amap開発プラットフォームの周辺クエリAPIを使用して、設定したキーワードに基づいてクエリを実行します。
  1. Key を使用して周囲のクエリ API を呼び出し、「モール」や「コミュニティ」などのキーワード パラメーターを渡します。
  • 返された JSON データを解析し、条件を満たす地理的位置情報を抽出します。
  • クエリ結果をもとに、要件を満たすビジネス街やコミュニティ情報を選別し、整理・編集します。
  1. 地理的位置情報に基づいて、要件(対象場所からの距離など)を満たしているかどうかを判断します。
  • 要件を満たすビジネス地区やコミュニティに関する統計を整理および編集し、Excel または CSV 形式で保存します。
  • 統計結果を Excel または CSV 形式にエクスポートして、その後の分析やレポートの作成を容易にします。

注: (上記のコンテンツは iFlytek Spark AI によって生成されます)

1. AutoNavi 開発プラットフォームに登録する

Amap Open Platform は、Amap が立ち上げたオープン サービス プラットフォームで、開発者に地図開発ツール、ロケーション クラウド コンピューティング、ロケーション ビッグ データなどの多数の機能を提供します。その中には、地図開発ツールには API/SDK が含まれ、高速位置情報クラウド コンピューティングには Yuntu、権威ある位置ビッグデータには AutoNavi が含まれます。さらに、Amap オープン プラットフォームは Web サービス API も提供し、開発者に HTTP インターフェイスを提供し、これを通じて開発者はさまざまなタイプの地理データ サービスを使用できます。

Amap オープンプラットフォームに開発者として登録し、さまざまなサービスを利用するためのキーを取得するアプリケーションを作成できます。https://lbs.amap.com/ にログインし、まずアカウントとキーを申請します。Amap 開発者として登録するには、次の 3 つの手順が必要です。

最初のステップは、Amap 開発者として登録することです。

2 番目のステップでは、コンソールに移動してアプリケーションを作成します。

3 番目のステップは、キーを取得することです。

詳細は下図をご参照ください 開発者コンソールでは、各種サービスの設定、表示、監視が行えます。

ここに画像の説明を挿入します

2. ペリフェラル検索開発の実践

開発ドキュメントで定義されている WebAPI 検索サービス API は、キーワード検索、周囲検索、ポリゴン検索、ID クエリの 4 つのフィルタリング メカニズムを含む、POI 情報をクエリするためのさまざまな機能を提供するシンプルな HTTP インターフェイスです。

該当するシーン:

  • キーワード検索: POI キーワードを使用して、KFC、朝陽公園などの条件付き検索を実行します。また、銀行などの POI タイプ検索の設定もサポートしています。
  • 周辺検索:ユーザーが入力した緯度経度座標付近の設定範囲内のキーワードやPOIの種類に基づいて検索します。
  • ポリゴン検索: ポリゴン領域内を検索します。
  • ID クエリ: POI ID を通じて POI の詳細をクエリします。入力プロンプト API と組み合わせて使用​​することをお勧めします。

2.1. 検索POI API

URL:https://restapi.amap.com/v3/place/text?parameters

リクエストメソッド:GET

サイドリファレンス: 検索 API: https://lbs.amap.com/api/webservice/guide/api/search

2.2. WebAPI 経由でマップを追加するためのクイック スタート ガイド。

ステップ 1: 「Web サービス API」キーを申請する

ステップ 2: HTTP リクエスト URL の結合
最初のステップで適用されたキーを必須パラメータとして一緒に送信する必要があります。

ステップ 3: HTTP リクエストによって返されたデータ (JSON または XML 形式) を受信し、データを解析します。

2.3. 主要なコード例の検索

2.3.1. 返された検索結果の分析

import requests
import math
import time

# 解析API返回结果
def getnote(ret_dat):
    neighborhoods_note = []
    for j in range(0, len(ret_dat['pois'])):
        neighborhoods = ret_dat['pois'][j]['name']    
        address = ret_dat['pois'][j]['address'] 
        location = ret_dat['pois'][j]['location']
        adname = ret_dat['pois'][j]['adname']
        cityname = ret_dat['pois'][j]['cityname']
        neighborhoodstype = ret_dat['pois'][j]['type']
        business_area = ret_dat['pois'][j]['business_area']
   
        tmp = [neighborhoods,neighborhoodstype, business_area,location,adname,cityname,address]                    
        neighborhoods_note.append(tmp)
        
    return neighborhoods_note

公式ドキュメントでは戻り値(スクリーンショットの一部)について以下のように説明されています。
ここに画像の説明を挿入します

2.3.2. 検索リクエスト

# 输入数据文件名称,经度,纬度,半径
def surroundingFormats(filename, longitude, latitude, radius):
    # 周边搜索
    url = 'https://restapi.amap.com/v3/place/around?'
    url = url + 'key=' + key
    
    location = '&location=' + str(longitude) + ',' + str(latitude) 
    keywords = '&keywords=小区'
    radius = '&radius=' + str(radius)
    offset = '&offset=20'    # 默认20个,多了,可能返回出错
    page = '&page='
       
    url = url + location + keywords + radius + offset
    
    neighborhoods_note = []       
    try:
        query_url = url + page + str(1) + '&extensions=all'
        
        response = requests.get(url=query_url, timeout=30)
        ret_dat = response.json()
          
        count = int(ret_dat['count'])
        neighborhoods_note = neighborhoods_note + getnote(ret_dat)
        pages = math.ceil(count/20)
        # 给网络反馈时间,暂停3秒
        time.sleep(3)
         
        for i in range(2,pages+1):
            query_url = url + page + str(i) + '&extensions=all'        
            response = requests.get(url=query_url, timeout=30)
        
            ret_dat = response.json()
            # API返回的数量,与实际可查询到的数据,可能不一致,以实际返回的为准
            if len(ret_dat['pois'])==0:
                break
            
            neighborhoods_note = neighborhoods_note + getnote(ret_dat)
                        
            # 给网络反馈时间,暂停3秒
            time.sleep(3)  
            print('降低网络服务压力,暂停3秒')      
                
    except requests.exceptions.ConnectionError: 
        ret_msg = '网络接口连接超时'
    except:   
        print("高德地图周边查询异常错误", requests.exceptions)

    # 列表转换为字符串列表,用于保存为文件(csv格式)
    neighborhood_line = []
    for v in neighborhoods_note:
        ss = ''
        for s in v:
        	# 返回实际数据无,内容为[],判断是list,而转换为空字符串''
            if type(s)==list:
                s = ''
            if len(ss) ==0:
                ss = s
            else:
                ss = ss + ',' + s
        ss = ss + '\n'
        neighborhood_line.append(ss)
       
    with open(fileName,'a+',encoding='utf-8') as file:
        file.writelines(neighborhood_line)

クエリの結果は次のとおりです。
ここに画像の説明を挿入します

3. まとめ

Python を使用して周囲のビジネス環境情報をクエリするには、Amap 開発プラットフォームの API インターフェイスを使用できます。具体的な手順は次のとおりです。

  1. Amap オープン プラットフォームにアカウントを登録し、キーを取得するためのアプリケーションを作成します。
  2. Amap開発プラットフォームの周辺クエリAPIを使用して、設定したキーワードに基づいてクエリを実行します。
  3. クエリ結果に基づいて、要件を満たす地理的位置情報が絞り込まれ、整理および統計が実行されます。
  4. 統計結果を Excel または CSV 形式にエクスポートして、その後の分析やレポートの作成を容易にします。

利点と特徴:

  • 効率的: Amap 開発プラットフォームの API インターフェイスを使用すると、周囲のビジネス環境情報を迅速に取得し、データ収集の効率を向上させることができます。
  • 正確:クエリにキーワードを設定することで、目的のデータを正確に取得でき、データ収集エラーを減らすことができます。
  • 柔軟性: クエリ条件と統計手法をニーズに応じて調整し、さまざまなシナリオでのビジネス分析のニーズを満たすことができます。

質問:

  • API インターフェイスと Amap 開発プラットフォームの使用法に精通している必要があり、初心者にとっては一定の学習コストがかかる場合があります。
  • 周囲のビジネス環境情報の複雑さにより、データのクリーニングと処理が必要となる異常な状況が発生する可能性があります。
  • 一部のビジネス情報は不完全または不正確である可能性があり、データの検証と確認が必要です。

おすすめ

転載: blog.csdn.net/xiaoyw/article/details/132182253