您当前的位置: 首页 >  Python

漏刻有时

暂无认证

  • 0浏览

    0关注

    717博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

python爬虫学习(1):百度地图web服务API地理解码

漏刻有时 发布时间:2021-09-02 12:46:54 ,浏览量:0

知识要点
  1. requests模块get方法的使用;
  2. json模块解码的使用;
  3. with open() as f 文件操作的用法;
  4. for 循环的使用;
完整代码
import requests
import json

def get_urls(add):
    url = "https://api.map.baidu.com/geocoding/v3/?address=" + str(add)
    url = url + "&output=json&ak=11Z8uiP8kIz6AG0Vjiwzbc5f9I**"
    r = requests.get(url)
    res = json.loads(r.text)
    # 数据格式化;
    content = str(add) + "," + str(res["result"]["location"]["lng"]) + "," + str(res["result"]["location"]["lat"]) + "\n"
    # 写入文件
    with open('data.csv', 'a') as f:
        f.write(content)
    return ""


# 读取地址信息;
with open(r'add.txt', 'r', encoding='utf-8') as f:
    # 读取地址信息列表
    address = f.read().split()
    # 地址转换
    i = 0
    for item in address:
        # 调用百度转换API封装函数;
        get_urls(item)
        print("第{}个地址已转换".format(i + 1))
        i += 1

要点说明
  1. with open(r’add.txt’, ‘r’, encoding=‘utf-8’),加入encoding=‘utf-8’,防止读取.txt文件编码错误;
  2. open(‘data.csv’, ‘a’) as f,直接生成.csv文件,方便数据处理和传输;
  3. json.loads,解码成列表后,方便分离和调用;

lockdatav Done!

关注
打赏
1661217259
查看更多评论
立即登录/注册

微信扫码登录

0.0448s