Python + 百度Api 通过地址关键字获得格式化的地址信息

由于用户输入是千奇百怪的,除了格式语法不合要求之外的,即便是所谓的合法数据也是五花八门。尤其是地址,所有才由此文。

百度Api注册一个账号,创建一个应用后就会有一个`ak`的参数,就够了。

Python(号称胶水语言),此次所及的Demo是Python交互式编程的做法,只是为了方便展示。所得地址有可能是所在城市的地标地址,从功能层面来说已经尽力了。

 1 # -*- coding: utf-8 -*-
 2 
 3 import os
 4 import sys
 5 import json
 6 import urllib
 7 import requests
 8 from urllib import urlopen, quote
 9 
10 # Api
11 url = 'http://api.map.baidu.com/geocoder/v2/'
12 # 输出类型
13 output = 'json'
14 # 密钥
15 ak = 'ejxfGfepWQOUT2toG8GeGPN0rATxhBds'
16 # 为防止乱码,先进行编码
17 address = quote(sys.argv[1])
18 uri = url + '?' + 'address=' + address  + '&output=' + output + '&ak=' + ak 
19 # 请求第一次获得经纬度
20 req = requests.get(uri)
21 # 返回为json,进行解析
22 temp = json.loads(req.text)
23 # 获得经纬度
24 lat = temp['result']['location']['lat']
25 lng = temp['result']['location']['lng']
26 # 请求第二次用经纬度去获得位置信息
27 url_reback = 'http://api.map.baidu.com/geocoder/v2/?location='+bytes(lat)+','+bytes(lng)+'&output='+output+'&pois=1&ak='+ak
28 req_reback = requests.get(url_reback)
29 data = json.loads(req_reback.text)
30 
31 print "省:\t", data['result']['addressComponent']['province']
32 print "市:\t", data['result']['addressComponent']['city']
33 print "区:\t", data['result']['addressComponent']['district']
34 print "街:\t", data['result']['addressComponent']['street']
35 print "地址:\t", data['result']['formatted_address']

结果展示:

$ python test-baidu-api.py '石家庄'
省:    河北省
市:    石家庄市
区:    长安区
街:    中山东路
地址:    河北省石家庄市长安区中山东路216号
$ python test-baidu-api.py '郭守敬大街'
省:    河北省
市:    邢台市
区:    桥西区
街:    郭守敬北路
地址:    河北省邢台市桥西区郭守敬北路287号

 

转载于:https://www.cnblogs.com/yamboo/p/10772436.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python OneNote是利用Python编程语言对Microsoft OneNote进行操作和管理的工具。OneNote是Microsoft Office套件中的一款笔记和信息管理软件,而Python是一种高级编程语言,拥有简洁易学和强大的功能。 Python OneNote可以通过使用Microsoft Graph API(应用程序接口)来实现与OneNote的交互。Microsoft Graph API是微软提供的一组可用于访问其各种服务和数据的API集合,包括OneNote。通过Python OneNote,我们可以创建、编辑和删除OneNote笔记本、节和页面,也可以添加和删除页面内容,如文本、图像和表格等。 使用Python OneNote,我们可以利用Python的强大数据处理和分析能力对OneNote的内容进行自动化处理。我们可以编写程序来搜索、筛选和提取OneNote中的特定内容,如关键字、日期范围或特定格式的文本等。我们还可以利用Python的其他库和工具,如pandas和matplotlib,对从OneNote中提取的数据进行进一步的处理、分析和可视化。 Python OneNote还可以与其他Python库和框架结合使用,如web框架(如Flask或Django)和数据库(如MySQL或SQLite)。我们可以将OneNote中的数据与其他应用程序的数据进行集成和同步,实现更多的工作流程自动化和协同工作。 总之,Python OneNote是一个强大的工具,可以帮助我们更好地管理和处理OneNote中的信息和笔记,并将其与其他应用程序集成,实现更高效的工作和学习。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值