QGIS里面如何实现批量地址转经纬度

1.1 天地图API特性分析

天地图地理编码API(http://api.tianditu.gov.cn/geocoder)基于WGS84坐标系,支持结构化地址与经纬度的双向转换。其核心参数包括:

{
  "keyWord": "北京市海淀区莲花池西路28号",
  "level": "15",  # 地图缩放级别
  "mapBound": "116.375,39.893,116.421,39.918",  # 搜索范围坐标
  "queryType": "2"  # 查询类型(1-关键词搜索,2-精确地址)
}

运行

1.2 QGIS数据处理架构

地址CSV文件

QGIS数据导入模块

Python脚本处理

天地图API交互

结果缓存机制

错误重试模块

QGIS图层生成

结果验证工具


二、天地图API接入准备

2.1 API密钥申请流程
  1. 访问天地图开放平台(天地图API
  2. 注册开发者账号(需实名认证)
  3. 创建应用获取API Key,注意配额限制:
    • 个人开发者:5000次/日
    • 企业认证用户:100000次/日
2.2 QGIS环境配置
# 安装必要Python库
pip install requests pandas qgis

运行


三、批量处理脚本开发

3.1 核心代码结构
from qgis.core import *
import requests, csv, time

class TiandituGeocoder:
    def __init__(self, api_key):
        self.base_url = "http://api.tianditu.gov.cn/geocoder"
        self.api_key = api_key
        self.rate_limit = 50  # 每分钟请求上限

    def geocode(self, address):
        params = {
            "ds": json.dumps({"keyWord": address}),
            "tk": self.api_key
        }
        try:
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值