python-基站位置查询
本文采用的接口是聚合数据提供的
python2.7环境,3.x环境试了下好像不支持,获取位置信息为空
如下为运用代码:
#coding=utf-8
'''
Created on 2019年9月18日 @author: yanerfree python2.7
''' import json,urllib
from urllib import urlencode #----------------------------------
# 移动联通基站调用示例代码 - 聚合数据
# 在线接口文档:http://www.juhe.cn/docs/8
#---------------------------------- def main(loc): #配置您申请的APPKey---需要申请
appkey = "******"
#1.基站定位
getAddress(appkey,loc,"GET") #基站定位
def getAddress(appkey, loc, m="GET"):
url = "http://v.juhe.cn/cell/query"
params = {
"mnc" : loc[1], #移动基站:0 联通基站:1 默认:0
"lac" : loc[2], #小区号
"ci" : loc[3], #基站号
"hex" : "", #进制类型,16或10,默认:10
"dtype" : "json", #返回的数据格式:json/xml/jsonp
"callback" : "", #当选择jsonp格式时必须传递
"key" : appkey, #APPKEY }
params = urlencode(params)
if m =="GET":
f = urllib.urlopen("%s?%s" % (url, params))
else:
f = urllib.urlopen(url, params) content = f.read()
print 'content:',content
if content["error_code"] == 0:
#if content["reason"] == u"查询成功"
print '查询成功'
result = content["result"]
return result["adress"] '''
res = json.loads(content)
print 'res:',res
if res:
error_code = res["error_code"]
if error_code == 0:
#成功请求
print res["result"]
else:
print "%s:%s" % (res["error_code"],res["reason"])
else:
print "request api error"
''' if __name__ == '__main__': loc_str = '0-460,0,6350,53394,30,16,0,10-460,0,6350,53394,30,16,0,10-460,0,6350,53394,30,16,0,10' loc = loc_str.split('-')[1].split(',')
print loc
main(loc)
python2.7查询成功:
content: {"reason":"查询成功","result":{"mcc":"460","mnc":"0","lac":"6350","ci":"53394","lat":"31.046659471148","lon":"121.761917116247","radius":"431","address":"上海市浦东新区惠南镇良丰新村3号楼"},"error_code":0}
python3.7查询失败:
content: b'{"resultcode":"101","reason":"\xe9\x94\x99\xe8\xaf\xaf\xe7\x9a\x84\xe8\xaf\xb7\xe6\xb1\x82KEY","result":null,"error_code":10001}'
python-基站位置查询的更多相关文章
- Redis Geo: Redis新增位置查询功能
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/144.html 移动互联网增进了人与人之间的联系,其中基于位置信息的服务( ...
- 转:Redis Geo: Redis新增位置查询功能
原文来自于:http://www.infoq.com/cn/news/2015/07/redis-geo 移动互联网增进了人与人之间的联系,其中基于位置信息的服务(Location Based Ser ...
- 【百度地图API】建立全国银行位置查询系统(五)——如何更改百度地图的信息窗口内容?
原文:[百度地图API]建立全国银行位置查询系统(五)--如何更改百度地图的信息窗口内容? 摘要: 酷讯.搜房.去哪儿网等大型房产.旅游酒店网站,用的是百度的数据库,却显示了自定义的信息窗口内容,这是 ...
- 【百度地图API】建立全国银行位置查询系统(四)——如何利用百度地图的数据生成自己的标注
原文:[百度地图API]建立全国银行位置查询系统(四)--如何利用百度地图的数据生成自己的标注 摘要: 上一章留个悬念,"如果自己没有地理坐标的数据库,应该怎样制作银行的分布地图呢?&quo ...
- 【百度地图API】建立全国银行位置查询系统(三)——如何在地图上添加银行标注
原文:[百度地图API]建立全国银行位置查询系统(三)--如何在地图上添加银行标注 <摘要>你将在第三章中学会以下知识: 如何在地图上添加带银行logo的标注?(你也可以换成商场logo, ...
- 【百度地图API】建立全国银行位置查询系统(二)——怎样为地图添加控件
原文:[百度地图API]建立全国银行位置查询系统(二)--怎样为地图添加控件 <摘要>你将在第二章中学会以下知识: 使用手写代码的利器——notepad++: 如何为地图添加控件——鱼骨. ...
- 【百度地图API】建立全国银行位置查询系统(一)——如何创建地图
原文:[百度地图API]建立全国银行位置查询系统(一)--如何创建地图 <摘要>你将在第一章中学会以下知识: 如何创建一个网页文件 怎样利用百度地图API建立一张2D地图,以及3D地图 如 ...
- setParameter不支持传统的按位置查询方式
setParameter不支持传统的按位置查询方式 String hql = "from Customer as c where c.cust_id = ?"; List<C ...
- 如何查看Python 安装位置以及已经安装的库
如何查看Python 安装位置以及已经安装的库 步骤一: 1. Start 一个command prompt 2. 找到电脑中已经安装的Python 位置: where python 1 打开路径, ...
- python 连接数据库,查询结果写入数据到excel
使用Python链接数据库查询数据,并将查询结果写入到Excel中,实现方法上主要有两步,第一,查数据,第二,写Excel. 一.导入需要的包 import time import xlwt from ...
随机推荐
- 【Linux常见命令】seq命令
seq - print a sequence of numbers seq命令用于以指定增量从首数开始打印数字到尾数,即产生从某个数到另外一个数之间的所有整数,并且可以对整数的格式.宽度.分割符号进行 ...
- Git 常见问题汇总
git reabse 合并多个commit git rebase -i HEAD~{NUM} git rebase -i start end 会进入一个指定区间的commit列表 根据提示进行文本编辑 ...
- Swift-Realm数据库的使用详解
Swift-Realm数据库的使用详解 概述 Realm 是一个跨平台的移动数据库引擎,其性能要优于 Core Data 和 FMDB - 移动端数据库性能比较, 我们可以在 Android 端 re ...
- Linux下Wiki服务器的搭建
一.准备工作 1.软件下载和安装 最主要的就是安装好Mysql+apache+PHP 测试apache能够解析index.php文件后就可以. mysql安装好后: adduser wiki #给 ...
- JavaScript 后台获取数据 - HTTP203 Advent(中文字幕)
如果关注过 Google 相关的开发技术,对 HTTP203 这个栏目应该不陌生. 这是 HTTP203 圣诞节的特别版! Jake(@jaffathecake)和 Surma(@DasSurma)有 ...
- python(索引/切片)
一.索引 1.索引值从左到右-->从0开始,索引值从右到左-->从-1开始 取值格式var[index] >>> name = "xinfangshuo&quo ...
- 使用django开发论坛输出调试信息时附加远程客户端IP地址!
前言 最近使用django开发了个匿名社区(哈士奇社区 4nmb.com),但是有个问题一直困扰我半天,就是如何在django调试信息上输出远程客户端的真实IP地址,在网上找了很多资料也没见人遇到过, ...
- Tomcat Ghostcat - AJP协议漏洞DEBUG
环境 IntelliJ IDEA 2020.1 x64 tomcat-8.5.46 配置 pom.xml <?xml version="1.0" encoding=" ...
- Java中的内存
目录 栈(Stack):存放的都是方法中的局部变量.方法的运行一定要在栈当中. 堆(Heap):凡是new出来的东西,都在堆内存当中 方法区(Method Area):存储.class相关信息,包含方 ...
- java读源码 之 queue源码分析(PriorityQueue,附图)
今天要介绍的是基础容器类(为了与并发容器类区分开来而命名的名字)中的另一个成员--PriorityQueue,它的大名叫做优先级队列,想必即使没有用过也该有所耳闻吧,什么?没..没听过?emmm... ...