国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

這篇具有很好參考價值的文章主要介紹了ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

ChatGPT工作提效系列文章目錄

ChatGPT工作提效系列

  1. ChatGPT工作提效之初探路徑獨孤九劍遇強則強
  2. ChatGPT工作提效之在程序開發(fā)中的巧勁和指令(創(chuàng)建MySQL語句、PHP語句、Javascript用法、python的交互)
  3. ChatGPT工作提效之生成開發(fā)需求和報價單并轉為Excel格式
  4. ChatGPT工作提效之小鵝通二次開發(fā)批量API對接解決方案(學習記錄同步、用戶注冊同步、權益訂購同步、開發(fā)文檔)


前言

一般來說,利用 Python 對接百度地圖開放平臺 API 主要有以下幾種方式:

  1. 直接通過 requests 請求發(fā)送 HTTP 請求,獲取響應結果。

這種方式比較簡單直接,可以通過 requests 庫發(fā)送 GET、POST 等不同類型的請求,獲取響應結果后進行解析和處理。示例代碼:

import requests

# 百度地圖 API 地址
url = "https://api.map.baidu.com/place/v2/search"

# 請求參數(shù)
params = {
    "query": "酒店",
    "region": "北京",
    "output": "json",
    "ak": "你的百度地圖開發(fā)者密鑰"
}

# 發(fā)送請求
response = requests.get(url, params=params)

# 處理響應結果
if response.status_code == 200:
    json_data = response.json()
    # 進行數(shù)據(jù)解析和處理
else:
    print("請求失敗,狀態(tài)碼為", response.status_code)
  1. 使用百度地圖 Python SDK 進行操作。

百度提供了 Python SDK 接口,可以方便地實現(xiàn)地理編碼、路線規(guī)劃、地圖可視化等功能。SDK 中提供了豐富的 API 接口,也支持上傳數(shù)據(jù)到百度云存儲等操作。使用 SDK,需要先安裝并導入百度地圖的 Python SDK 包,示例代碼:

from baidumap.api import PlaceSearch

ak = "你的百度地圖開發(fā)者密鑰"

params = {
    "query": "酒店",
    "region": "北京",
    "output": "json"
}

search = PlaceSearch(ak=ak)
res = search.place_search(**params)

if res.status == 0:
    print(res.results)
else:
    print("請求失敗,狀態(tài)碼為", res.status)
  1. 使用百度地圖開放平臺提供的其他開發(fā)接口實現(xiàn)。

百度地圖開放平臺提供了多個開發(fā)接口,比如 JavaScript API、Web API、移動端 API 等等,選擇適合自己場景的 API 接口可以更加方便地實現(xiàn)自己的應用和功能。每個接口都會提供詳細的 API 文檔和示例,根據(jù)需求選擇合適的 API 接口進行開發(fā)即可。

那么如何利用ChatGPT來提效呢?


一、批量經(jīng)緯度坐標路線規(guī)劃

百度地圖路線規(guī)劃什么意思

百度地圖路線規(guī)劃,是指根據(jù)起始地點和終止地點,使用百度地圖提供的駕車、步行或公交等不同出行方式,計算出最優(yōu)路徑和行駛時間等信息的過程。具體來說,百度地圖路線規(guī)劃通常包含以下幾個步驟:

  1. 解析起始地點和終止地點的坐標:用戶輸入的起始地點和終止地點一般是以地址的形式呈現(xiàn),需要通過地理編碼的技術將其轉換為經(jīng)緯度坐標。

  2. 根據(jù)不同出行方式選擇最優(yōu)路徑:根據(jù)用戶選擇的出行方式(駕車、步行、公交等),通過算法和實時交通情況,選擇并規(guī)劃出一條最優(yōu)路徑。其中,駕車路徑規(guī)劃還包括交通限制、高速費用、實時路況等因素的考慮。

  3. 計算行駛距離和時間:在規(guī)劃出最優(yōu)路徑后,通過計算路徑距離和行駛時間等指標,提供給用戶參考。

  4. 顯示路徑和導航:將規(guī)劃的路徑展示到地圖上,標注主要路線和途經(jīng)的關鍵點,并提供導航和語音提示等輔助功能。

通過百度地圖路線規(guī)劃,可幫助人們更好地了解出行路線、行駛距離、行駛時間等相關信息,方便出行安排和交通規(guī)劃。

如何批量實現(xiàn)起始點路線規(guī)劃,進行計算距離和耗時,封裝成一個函數(shù),并導出excle表格。

以下是一個將起始點路線規(guī)劃計算封裝成函數(shù),并批量計算距離和耗時,并導出 Excel 表格的 Python 代碼示例:

首先,安裝必要的依賴:

pip install requests openpyxl

然后,導入需要的模塊:

import requests
import openpyxl
from openpyxl.utils import get_column_letter
from openpyxl.styles import Alignment

最后,定義封裝函數(shù)并調用:

def calculate_distance_duration(api_key, origins, destinations, excel_file_path):
    """
    計算起始點路線規(guī)劃的距離和耗時,并保存到 Excel 表格中
    :param api_key: 百度地圖開發(fā)者密鑰
    :param origins: 起點坐標列表,每個元素為一個字符串,如 ['116.43213,39.99858', '116.118904, 24.46807']
    :param destinations: 終點坐標列表,每個元素為一個字符串
    :param excel_file_path: Excel 文件路徑
    :return: 返回導出的 Excel 表格路徑
    """
    # 定義 API 路徑和請求參數(shù)
    api_url = 'http://api.map.baidu.com/direction/v2/driving'
    api_params = {
        'ak': api_key,
    }

    # 創(chuàng)建 Excel 工作簿和工作表
    wb = openpyxl.Workbook()
    ws = wb.active

    # 創(chuàng)建表頭
    ws['A1'] = '起始點'
    ws['B1'] = '終點'
    ws['C1'] = '距離(米)'
    ws['D1'] = '耗時(分鐘)'

    # 格式化表頭
    for cell in ws[1]:
        cell.font = openpyxl.styles.Font(bold=True)
        cell.alignment = Alignment(horizontal='center', vertical='center')

    # 遍歷起始點和終點坐標列表,計算路線規(guī)劃
    for i, origin in enumerate(origins, start=2):
        for j, destination in enumerate(destinations, start=2):
            # 構造請求參數(shù)
            api_params.update({
                'origin': origin,
                'destination': destination,
            })

            # 發(fā)送請求
            response = requests.get(api_url, params=api_params)
            if response.status_code == 200:
                # 解析響應
                json_data = response.json()
                routes = json_data['result']['routes']
                if routes:
                    # 獲取最短路線方案
                    route = min(routes, key=lambda x: x['distance'])

                    # 提取距離和時間
                    distance = route['distance']
                    duration = route['duration'] // 60

                    # 將結果保存到 Excel 表格中
                    row = [origin, destination, distance, duration]
                    for k, value in enumerate(row, start=1):
                        cell = ws.cell(row=i, column=k, value=value)
                        cell.alignment = Alignment(horizontal='center', vertical='center')
                else:
                    print(f'未找到起點 {origin} 和終點 {destination} 之間的路線規(guī)劃')
            else:
                print(f'獲取起點 {origin} 和終點 {destination} 的路線規(guī)劃失敗,狀態(tài)碼:{response.status_code}')

    # 自適應列寬
    for column in ws.columns:
        column_letter = get_column_letter(column[0].column)
        ws.column_dimensions[column_letter].width = max(len(str(cell.value)) for cell in column)

    # 保存 Excel 文件,并返回文件路徑
    wb.save(excel_file_path)

    return excel_file_path

使用示例:

# 測試數(shù)據(jù)
my_api_key = 'your_api_key'
start_locations = ['116.43213,39.99858', '116.118904, 24.46807']
end_locations = ['116.43187,39.99765', '117.2428, 31.8427']

# 計算起始點路線規(guī)劃的距離和耗時,并保存到 Excel 表格中
calculate_distance_duration(my_api_key, start_locations, end_locations, '計算距離.xlsx')

其中,參數(shù) api_key 為你的百度地圖開發(fā)者密鑰,`origins

二、批量爬取某城市指定類目POI

使用python如何批量爬取某城市指定類目POI,如杭州市拱墅區(qū)美食的興趣點,并導出excel表格,具體代碼怎么寫

1.爬取POI 數(shù)量有限制

以下是使用 Python 爬取某城市指定類目 POI(例如杭州市拱墅區(qū)美食)并導出 Excel 表格的代碼示例:

import requests
import openpyxl

# 輸入百度地圖開發(fā)者密鑰
MY_API_KEY = 'your_api_key'

# 定義 API 路徑
url = 'http://api.map.baidu.com/place/v2/search'

# 起點坐標和查詢類別
query = '美食'
region = '杭州市拱墅區(qū)'
page_size = 20  # 每頁數(shù)據(jù)量,最大為 20
page_num = 0  # 起始頁碼

# 創(chuàng)建 Excel 工作簿和工作表
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = '名稱'
ws['B1'] = '經(jīng)度'
ws['C1'] = '緯度'
ws['D1'] = '地址'

# 循環(huán)爬取每一頁的數(shù)據(jù)
while True:
    # 構建請求參數(shù)
    payload = {
        'query': query,
        'region': region,
        'ak': MY_API_KEY,
        'output': 'json',
        'page_size': page_size,
        'page_num': page_num,
    }

    # 發(fā)送請求
    response = requests.get(url, params=payload)
    if response.status_code != 200:
        print('請求錯誤', response.status_code)
        break

    # 解析響應
    json_data = response.json()
    if json_data.get('status') != 0:
        print(f"獲取 {region} {query} 數(shù)據(jù)失敗: {json_data.get('message')}")
        break

    # 獲取總記錄數(shù)和當前頁碼的數(shù)據(jù)
    total = json_data.get('total')
    results = json_data.get('results')

    # 將當前頁碼的數(shù)據(jù)寫入 Excel 表格
    for i, result in enumerate(results, start=2 + page_num * page_size):
        name = result.get('name')
        location = result.get('location')
        address = result.get('address')
        ws.cell(row=i, column=1, value=name or '')
        ws.cell(row=i, column=2, value=location.get('lng', '') or '')
        ws.cell(row=i, column=3, value=location.get('lat', '') or '')
        ws.cell(row=i, column=4, value=address or '')

    # 如果已經(jīng)獲取了總記錄數(shù),則跳出循環(huán)
    if total:
        if page_num * page_size + len(results) >= total:
            break

    # 自增頁碼
    page_num += 1

# 自適應列寬
for column in ws.columns:
    cell = max(column, key=lambda x: len(str(x.value)))
    width = min(100, max(10, len(str(cell.value))))
    ws.column_dimensions[cell.column_letter].width = width

# 保存 Excel 文件
wb.save(f"{region}{query}.xlsx")

需要注意以下幾點:

  1. 首先,需要在百度地圖開放平臺上注冊并獲取自己的開發(fā)者密鑰 MY_API_KEY。
  2. 請求路徑參數(shù) url 中的 /place/v2/search 表示的是 POI 搜索,如果要獲取其他類型的信息,需要更改請求路徑,具體可以參考官方文檔。
  3. 請求參數(shù) payload 中的 queryregion 分別表示查詢類別和查詢地點,在實際使用中,可以根據(jù)自己的需求進行更改,如 美食 可以改成 酒店 或其他類別,杭州市拱墅區(qū) 可以改成 浙江省杭州市 或其他地點。
  4. 更改請求參數(shù)中的 page_size 可以控制每頁數(shù)據(jù)量,最大值為 20。
  5. 結果會在工作簿第一個活動工作表中創(chuàng)建,包含 POI 的名稱、經(jīng)度、緯度和地址信息。
  6. 自適應列寬代碼可以讓每一列的寬度自適應單元格內容的長度。
  • 生成的POI地址,因百度地圖接口的顯示,數(shù)量不多;

ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

2.突破POI 數(shù)量有限制

百度地圖 API 請求返回的 POI 數(shù)量有限制,即每個開發(fā)者密鑰每天只能調用一定次數(shù)的 API 接口,并且每個查詢請求也有最大結果數(shù)、頁碼等限制。如果需要盡可能獲取更多的 POI,可以參考以下幾點:

  1. 在多個城市或區(qū)域中查詢,可以通過 region 參數(shù)傳遞多個城市或區(qū)域的信息,例如 '杭州市拱墅區(qū)|杭州市西湖區(qū)|杭州市余杭區(qū)'
  2. 增加查詢關鍵詞的精度或縮小查詢范圍,例如可以使用 '火鍋|串串香|川菜' 替代 '美食'
  3. 對于一個城市或一個區(qū)域,可以通過循環(huán)調用多個頁面的方式來獲取更多的結果,例如設置 page_num 的初始值不為 0,并不斷自增 page_num 直至達到最大頁碼數(shù)或者超過總的記錄數(shù)。例如,可以設置 max_page_num = 20 或其他自定義值,最大也不得超過 ceil(total / page_size)。

下面是修改過后的代碼示例:

import math

import requests
import openpyxl


# 輸入百度地圖開發(fā)者密鑰
MY_API_KEY = 'your_api_key'

# 定義 API 路徑
url = 'http://api.map.baidu.com/place/v2/search'

# 起點坐標和查詢類別
query = '火鍋|串串香|川菜'
region = '杭州市拱墅區(qū)'
page_size = 20  # 每頁數(shù)據(jù)量,最大為 20
page_num = 0  # 起始頁碼
max_page_num = 100  # 最大頁碼數(shù),最大不得超過 ceil(total / page_size)

# 創(chuàng)建 Excel 工作簿和工作表
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = '名稱'
ws['B1'] = '經(jīng)度'
ws['C1'] = '緯度'
ws['D1'] = '地址'

# 獲取總記錄數(shù)
total = None

while not total or page_num * page_size < total:
    # 構建請求參數(shù)
    payload = {
        'query': query,
        'region': region,
        'ak': MY_API_KEY,
        'output': 'json',
        'page_size': page_size,
        'page_num': page_num,
    }

    # 發(fā)送請求
    response = requests.get(url, params=payload)
    if response.status_code != 200:
        print('請求錯誤', response.status_code)
        break

    # 解析響應
    json_data = response.json()
    if json_data.get('status') != 0:
        print(f"獲取 {region} {query} 數(shù)據(jù)失敗: {json_data.get('message')}")
        break

    # 獲取總記錄數(shù)
    if total is None:
        total = json_data.get('total')

    # 獲取當前頁碼的數(shù)據(jù)
    results = json_data.get('results')

    # 將當前頁碼的數(shù)據(jù)寫入 Excel 表格
    for i, result in enumerate(results, start=2 + page_num * page_size):
        name = result.get('name')
        location = result.get('location')
        address = result.get('address')
        ws.cell(row=i, column=1, value=name or '')
        ws.cell(row=i, column=2, value=location.get('lng', '') or '')
        ws.cell(row=i, column=3, value=location.get('lat', '') or '')
        ws.cell(row=i, column=4, value=address or '')

    # 自增頁碼
    page_num += 1

    # 如果已經(jīng)獲取了總記錄數(shù),則控制最大頁碼數(shù)
    if total is not None:
        max_page_num = min(math.ceil(total / page_size), max_page_num)

    # 如果達到最大頁碼數(shù),則跳出
    if page_num >= max_page_num:
        break

# 自適應列寬
for column in ws.columns:
    cell = max(column, key=lambda x: len(str(x.value)))
    width = min(100, max(10, len(str(cell.value))))
    ws.column_dimensions[cell.column_letter].width = width

# 保存 Excel 文件
wb.save(f"{region}{query}.xlsx")

需要注意以下幾點:

  • 在獲取查詢結果總記錄數(shù)時,只需要獲取一次即可,可以通過判斷 total 是否為 None 來控制。獲取到 total 后,可以計算出最大頁碼數(shù),確保不會超過 ceil(total / page_size)
  • 循環(huán)爬取每一頁的數(shù)據(jù)時,可以通過 page_num * page_size < total 的判斷條件來控制循環(huán)次數(shù),并在到達最大頁碼數(shù)后及時跳出循環(huán),避免超調用 API 接口次數(shù)。
  • 增加查詢詞和查詢地點的精度或范圍可以控制返回結果數(shù)量。查詢結果數(shù)量過大時,需要對數(shù)據(jù)進行去重、排序、過濾等處理,以避免數(shù)據(jù)冗余和格式不統(tǒng)一的問題。

3.百度地圖API升級與ChatGPT的舊代碼沖突

在調試的過程中,由于近期百度地圖的升級,ChatGPT生成的代碼還是老的版本,無法直接運行。需要我們重新梳理,借鑒ChatGPT的算法。

  • 構建請求參數(shù)的變化
    # 構建請求參數(shù)
    payload = {
        'query': '酒店',
        "tag": "商務酒店,招待所,星級酒店",
        'region': '浙江省杭州市拱墅區(qū)',
        'ak': MY_API_KEY,
        'output': 'json',
        'page_size': 20,
        'page_num': 0,
    }

ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

  • ‘APP 服務被禁用’

{‘status’: 240, ‘message’: ‘APP 服務被禁用’}的解決方案:替換成服務端的ak,也是近期的百度地圖升級。
ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

  • origin or destination is invalid,起始點無效。

{‘status’: 2, ‘message’: ‘origin or destination is invalid’}的解決方案:API路徑和請求參數(shù)的升級,參照官網(wǎng)比對。

ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)


三、獲取當前城市的天氣情況

使用百度地圖開放平臺,獲取當前城市的天氣情況,代碼怎么寫

以下是使用百度地圖開放平臺,獲取當前城市天氣情況的 Python 代碼示例:

import requests

# 輸入百度地圖開發(fā)者密鑰
MY_API_KEY = 'your_api_key'

# 獲取當前 IP 和城市信息
ip_api_url = 'http://api.map.baidu.com/location/ip'
payload = {
    'ak': MY_API_KEY,
    'ip': '',
    'coor': 'bd09ll',
}
response = requests.get(ip_api_url, params=payload)
if response.status_code != 200:
    print('請求錯誤', response.status_code)
    raise SystemExit(0)
json_data = response.json()
if json_data.get('status') != 0:
    print(f"獲取 IP 地址數(shù)據(jù)失敗: {json_data.get('message')}")
    raise SystemExit(0)
city_name = json_data['address_detail']['city']

# 獲取城市天氣數(shù)據(jù)
weather_api_url = 'http://api.map.baidu.com/weather/v1'
payload = {
    'district_id': '',
    'output': 'json',
    'ak': MY_API_KEY,
}
response = requests.get(weather_api_url, params=payload)
if response.status_code != 200:
    print('請求錯誤', response.status_code)
    raise SystemExit(0)
json_data = response.json()
if json_data.get('status') != 0:
    print(f"獲取天氣數(shù)據(jù)失敗: {json_data.get('message')}")
    raise SystemExit(0)

# 解析天氣數(shù)據(jù)
weather_data = {}
for city in json_data['result']:
    if city_name in (city.get('name', ''), city.get('alias', '')):
        weather_data = {
            '城市': city_name,
            '天氣': city['weather_data'][0]['wea'],
            '溫度': city['weather_data'][0]['tem'],
            '風向': city['weather_data'][0]['win'],
            '濕度': city['weather_data'][0]['humidity'],
            '空氣質量': city['air'],
            '更新時間': city['update_time'],
        }
        break

# 輸出天氣數(shù)據(jù)
if weather_data:
    print(f"城市: {weather_data['城市']}")
    print(f"天氣: {weather_data['天氣']}")
    print(f"溫度: {weather_data['溫度']}")
    print(f"風向: {weather_data['風向']}")
    print(f"濕度: {weather_data['濕度']}")
    print(f"空氣質量: {weather_data['空氣質量']}")
    print(f"更新時間: {weather_data['更新時間']}")
else:
    print(f"當前城市:{city_name} 無天氣數(shù)據(jù)")

需要注意以下幾點:

  1. 首先需要在百度開放平臺上注冊并獲取密鑰 MY_API_KEY。
  2. 獲取當前 IP 和城市信息,可以通過發(fā)送請求訪問百度地圖開放 API 的 location/ip 接口,然后解析返回的 JSON 數(shù)據(jù)來獲取 IP 地址和城市信息。
  3. 獲取城市天氣數(shù)據(jù),可以通過發(fā)送請求訪問百度地圖開放 API 的 weather/v1 接口,然后將查詢結果中包含當前城市天氣數(shù)據(jù)的條目提取出來。
  4. 天氣結果中包含城市、天氣、溫度、風向、濕度、空氣質量和更新時間等信息,可以針對不同的信息進行處理、顯示或統(tǒng)計。

ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

如何解決獲取 IP 地址數(shù)據(jù)失敗: Unkown Error:no ipv6 permission, please apply through feedback

百度地圖開放平臺的 location/ip 接口是需要用戶的設備支持 IPv6 協(xié)議才能正常使用的,否則會出現(xiàn) Unkown Error:no ipv6 permission, please apply through feedback 的錯誤提示。

為了解決此問題,可以參考以下兩種方法:

  1. 在設備上開啟 IPv6 協(xié)議支持。具體的開啟方式和步驟會因設備和系統(tǒng)版本而不同,可以在設備設置中進行查找和開啟。
  2. 向百度地圖開放平臺反饋問題。如果設備無法支持 IPv6 協(xié)議,則可以向百度地圖開放平臺反饋該問題,請求其增加對 IPv4 協(xié)議的支持。具體的操作流程可以參考百度地圖開放平臺的官方文檔。

四、批量地理編碼

如何使用百度地圖web API,對地址批量進行轉換為經(jīng)緯度坐標,并輸出excel
ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)

可以使用百度地圖 web API 的 Geocoding API 接口實現(xiàn)將批量地址轉換為經(jīng)緯度坐標,并將結果輸出到 Excel 文件中。以下是 Python 代碼示例:

import requests
import openpyxl

# 輸入百度地圖開發(fā)者密鑰和讀取的地址列表(每個地址占據(jù)列表中一行)
MY_API_KEY = 'your_api_key'
addr_list = ['浙江省杭州市西湖區(qū)浙江大學紫金港校區(qū)1號樓', '浙江省杭州市西湖區(qū)浙江大學紫金港校區(qū)2號樓']

# 定義 API 路徑和 Excel 文件名
url = 'http://api.map.baidu.com/geocoding/v3/'
excel_file = '地址坐標.xlsx'

# 創(chuàng)建 Excel 工作簿和工作表
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = '地址'
ws['B1'] = '經(jīng)度'
ws['C1'] = '緯度'

# 循環(huán)獲取地址坐標并寫入 Excel 表格
for i, addr in enumerate(addr_list, start=2):
    payload = {'address': addr, 'output': 'json', 'ak': MY_API_KEY}
    response = requests.get(url, params=payload)
    if response.status_code != 200:
        print('請求錯誤', response.status_code)
        break
    json_data = response.json()
    if json_data.get('status') != 0:
        print(f"獲取坐標數(shù)據(jù)失敗: {json_data.get('message')}")
        break
    location = json_data['result']['location']
    ws.cell(row=i, column=1, value=addr or '')
    ws.cell(row=i, column=2, value=location.get('lng', '') or '')
    ws.cell(row=i, column=3, value=location.get('lat', '') or '')

# 自適應列寬
for column in ws.columns:
    cell = max(column, key=lambda x: len(str(x.value)))
    width = min(100, max(10, len(str(cell.value))))
    ws.column_dimensions[cell.column_letter].width = width

# 保存 Excel 文件
wb.save(excel_file)
print(f"文件{excel_file}保存成功")

需要注意以下幾點:

  1. 首先需要在百度開放平臺上注冊并獲取密鑰 MY_API_KEY。
  2. 將需要查詢的地址存儲在以地址為元素的列表 addr_list 中,每個地址占據(jù)列表中的一行。
  3. 使用 requests 庫向百度地圖 web API 的 Geocoding API 接口發(fā)送查詢請求,查詢參數(shù)為地址和密鑰。返回的 JSON 數(shù)據(jù)中包含地址的經(jīng)緯度坐標信息。
  4. 將查詢結果寫入一個新的 Excel 工作簿,并設置工作表的列寬自適應。

總結

ChatGPT是在不斷學習和成長中的AI,對于及時更新的信息還達不到實時更新,尤其是對于一些商用平臺開放平臺API接口,需要技術開發(fā)者,在官方文檔為主的情況下,借助ChatGPT進行快速有效的技術開發(fā)。

@漏刻有時文章來源地址http://www.zghlxwxcb.cn/news/detail-464336.html

到了這里,關于ChatGPT工作提效之使用python開發(fā)對接百度地圖開放平臺API的實戰(zhàn)方案(批量路線規(guī)劃、批量獲取POI、突破數(shù)量有限制、批量地理編碼)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 對接百度文心一言API---人工智能工作筆記0039

    對接百度文心一言API---人工智能工作筆記0039

    1.獲取文心一言的api key 這個地址然后 點擊 創(chuàng)建API key就可以了 然后先用postman測試一下 ?注意 ?這里的參數(shù)grant_type這個是client_credentials是固定的,然后 Content-Type也按照上面寫上 然后 看返回的內容 ,這個返回的data要記住. 然后再去訪問:

    2024年02月11日
    瀏覽(16)
  • Python編程實現(xiàn)百度AI開放平臺的接口對接方法,詳解和實踐指南

    Python編程實現(xiàn)百度AI開放平臺的接口對接方法,詳解和實踐指南 引言 百度AI開放平臺提供了豐富的人工智能接口,包括語音識別、圖像識別、自然語言處理等功能。本文將通過Python編程,詳解如何對接百度AI開放平臺的接口,并提供實際代碼示例。 準備工作 在開始之前,我們

    2024年02月13日
    瀏覽(31)
  • 基于Python+百度語音的智能語音ChatGPT聊天機器人(機器學習+深度學習+語義識別)含全部工程源碼 適合個人二次開發(fā)

    基于Python+百度語音的智能語音ChatGPT聊天機器人(機器學習+深度學習+語義識別)含全部工程源碼 適合個人二次開發(fā)

    本項目基于機器學習和語義識別技術,讓機器人理解文本并進行合適的答復。伙伴們可以通過該工程源碼,進行個人二次開發(fā),比如使用語音與機器人交流,實現(xiàn)智能問答、智能音箱及智能機器寵物等等。 當然針對現(xiàn)在最火爆的 ChatGPT等通用大語言模型 ,伙伴們可以直接將其

    2024年02月07日
    瀏覽(28)
  • 讓AI幫你工作(3)--學習提效

    讓AI幫你工作(3)--學習提效

    今天會給大家?guī)韮煽顚W習工作提效的兩款chatgpt相關的工具,同時會給圍繞chatgpt做產(chǎn)品的同學帶來一個開發(fā)框架。 背景: 在工作和學習中我們有很多時間是在和視頻、網(wǎng)頁打交道。在youtube上看國外著名大學的學習課程、看看歪果仁他們在玩什么新東西,或者是用網(wǎng)頁搜

    2024年02月09日
    瀏覽(19)
  • 使用java對接chatgpt(含全部代碼)

    使用java對接chatgpt(含全部代碼)

    因為對vscode不熟悉,前段界面我也是在idea里寫的,先看一下效果圖是這樣,比較簡陋 我直接上代碼,關于chatgpt前端的html,對了因為這個是我用之前寫的匿名群聊改的,可能有多余的就是樣式?jīng)]去掉,如果有人用的話自己看著可以優(yōu)化下 前端這方面還有兩個問題還沒有優(yōu)化

    2024年02月16日
    瀏覽(17)
  • 軟件工程:左移策略,決策和工作要前置,是提效的關鍵

    軟件工程:左移策略,決策和工作要前置,是提效的關鍵

    hi,我是熵減,見字如面。 在軟件開發(fā)的中,你是否也遇到過類似的場景: 團隊的目標是在1個月內,開發(fā)出一款新的社交媒體應用程序。由于時間比較緊,任務重,所以在開發(fā)的初期,方案設計、質量保障和安全性等上面,都是未能充分的考慮,以此來節(jié)省開發(fā)成本,并保

    2023年04月25日
    瀏覽(14)
  • “提效”|教你用ChatGPT玩數(shù)據(jù)

    “提效”|教你用ChatGPT玩數(shù)據(jù)

    上文給簡單聊了一下為什么ChatGPT不能取代數(shù)據(jù)分析師,本文我們來深入感受一下如何讓GPT幫助數(shù)據(jù)分析師“提效”。 場景一:SQL取數(shù) 背景:多數(shù)數(shù)據(jù)分析師都要用SQL語言從數(shù)據(jù)庫中提取數(shù)據(jù),SQL雖然簡單,但是寫幾百行取數(shù)代碼也是很頭疼的一個操作,這個時候不妨交給

    2023年04月22日
    瀏覽(19)
  • vs code 如何使用copilot(對接了chatgpt)

    vs code 如何使用copilot(對接了chatgpt)

    VS Code 是一個非常流行的開發(fā)工具,而 Copilot 則是一個基于 GPT 模型的代碼生成工具,可以通過 VS Code 安裝相關的插件來使用。 以下是在 VS Code 中使用 Copilot 的步驟: 下載安裝 VS Code 插件 首先,你需要下載并安裝 Copilot 的 VS Code 插件。在 VS Code 中依次點擊擴展 搜索“Copilot”

    2024年02月11日
    瀏覽(24)
  • 10倍提效!用ChatGPT編寫系統(tǒng)功能文檔。。。

    10倍提效!用ChatGPT編寫系統(tǒng)功能文檔。。。

    系統(tǒng)功能文檔是一種描述軟件系統(tǒng)功能和操作方式的文檔。它讓開發(fā)團隊、測試人員、項目管理者、客戶和最終用戶對系統(tǒng)行為有清晰、全面的了解。 通過ChatGPT,我們能讓編寫系統(tǒng)功能文檔的效率提升10倍以上。 ?《Leetcode算法刷題寶典》一位阿里P8大佬總結的刷題筆記。

    2024年04月09日
    瀏覽(17)
  • 對接百度文心一言

    一、接口地址 什么是文心千帆大模型平臺 - 文心千帆WENXINWORKSHOP | 百度智能云文檔

    2024年02月12日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包