百度地图坐标转换为gps_爬取百度地图坐标

最近接到一个需求,需要获得百度地图上某个城市的小学坐标,申请了百度接口之后,非常简单。需要实现准备好一个城市行政单位对照表。

eb2a4bb99a72f7f1b3761b10a6e235b0.png

具体代码如下

# -*-coding:UTF-8-*-
'''根据行政区域查询'''
import json
import csv
import sys
import requests  # 导入requests库,这是一个第三方库,把网页上的内容爬下来用的

ty = sys.getfilesystemencoding()
# print(ty)#这个可以获取文件系统的编码形式
import time
import pandas as pd

las = 1  # 给las一个值1
ak = '申请的百度密匙'
city = '上海市'
out = open(city+'.csv', 'a', newline='')
csv_write = csv.writer(out, dialect='excel')
print(time.time())
print('开始')
ta = '小学'

file_path_1 = '/Users/daimaou/Desktop/百度地理坐标需求/市区对照表.xlsx'
data = pd.read_excel(file_path_1)
a = data[data['地级市'] == city]
new_name_list = a['市&区'].tolist()
print(new_name_list)
for new_name in new_name_list:
    urls = []
    for i in range(0, 10):
        page_num = str(i)
        url = 'http://api.map.baidu.com/place/v2/search?query=' + ta + '&region='+new_name+'&page_size=20&page_num=' + str(
            page_num) + '&output=json&ak=' + ak
        urls.append(url)
    print('url列表读取完成')
    for url in urls:
        time.sleep(1)  # 为了防止并发量报警,设置了一个1秒的休眠。
        print(url)
        html = requests.get(url)  # 获取网页信息
        data = html.json()  # 获取网页信息的json格式数据
        for item in data['results']:
            jname1 = item['province']
            jname2 = item['city']
            jname3 = item['area']
            jname4 = item['name']
            jname = jname1 + jname2 + jname3 + jname4
            j_uid = item['uid']
            jstreet_id = item.get('street_id')
            jlat = item['location']['lat']
            jlon = item['location']['lng']
            jaddress = item['address']
            jphone = item.get('telephone')
            j_str = (jname, j_uid, jstreet_id, str(jlat), str(jlon), jaddress, jphone)
            csv_write.writerow(j_str)
            print("write over")
        print(time.time())
print('完成')

获取结果如下

17541da37fbf30764869ea10c251f7eb.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值