使用https://www.juhe.cn/提供的接口,查询归属地

在官网注册key即可使用。

代码如下

#!/usr/bin/python
# -*- coding: utf-8 -*-
import json, urllib, sys
from urllib import urlencode, urlopen
reload(sys)
sys.setdefaultencoding('utf8') #调用接口,获取结果为二维字典
def getPageCode(url, params):
params = urlencode(params)
f = urllib.urlopen(url, params)
content = f.read()
res = json.loads(content)
return res
#print('Error code: %s'%res["resultcode"]) #对api接口返回数据处理。
def resTest(resdata):
if resdata["resultcode"] == "200":
#返回有效结果
return resdata["result"]
else:
#定义错误字典,resdata["resultcode"]为接口返回的Error code
Errorinfo = {'province':'Error code', 'city':resdata["resultcode"]}
return Errorinfo #处理字典为单元组列表
def dictDate(data):
province = data["province"]
city = data["city"]
res.append((phoneNum, province, city))
#print('list res is : %s'%res)
return res #追加保存文件
def writeResult(resultdata):
f = open("location.log", "a")
for num, item, cit in resultdata:
f.write("%s\t" %num)
f.write("%s," %item)
f.write("%s" %cit)
f.write("\n")
f.close() if __name__ == "__main__":
url = "http://apis.juhe.cn/mobile/get"
for line in open("test.txt", "r"):
#读取电话号码
phoneNum = line.strip(" \t\r\n")
params = {
"phone": phoneNum,
"key": "0ea8e44e4612fb794c29f4979d238efq",
"dtype" : "json",
}
res = []
#调用getPageCode接口,resTest处理数据
#resd = (getPageCode(url, params))
resdate = resTest((getPageCode(url, params)))
#通过函数dictDate处理为单元组列表,
#[('13676512732', u'\u6d52\u6c5f', u'\u6e19\u5dde')]
resUlt = dictDate(resdate)
writeResult(resUlt)

定义号码文本test.txt

15306525811
13567156311
13968170611
15306525811
13567156311
13968170611

调用API接口,查询手机号码归属地(1)https://www.cnblogs.com/outsrkem/p/11219743.html

调用API接口,查询手机号码归属地(2)https://www.cnblogs.com/outsrkem/p/11221003.html

调用API接口,查询手机号码归属地(3)https://www.cnblogs.com/outsrkem/p/11221604.html

调用phone库,查询手机号码归属地(4)https://www.cnblogs.com/outsrkem/p/11236509.html

调用API接口,查询手机号码归属地(1)的更多相关文章

  1. 调用API接口,查询手机号码归属地(3)

    从mysql数据库获取电话号码,查询归属地并插入到数据库 #!/usr/bin/python # -*- coding: utf-8 -*- import json, urllib, sys, pym ...

  2. 调用API接口,查询手机号码归属地(2)

    使用pymysql pip install pymysql 创建mysql测试表 CREATE TABLE `userinfo` ( `id` int(20) NOT NULL AUTO_INCREM ...

  3. C#使用windows服务定时调用api接口

    使用VS创建windows服务项目: 创建好项目  会出现一个设计界面 右键弹出对话框 选择添加安装程序 名字什么的自己可以改: 项目目录: 打开项目中的ProjectInstaller.Design ...

  4. Python调用API接口的几种方式 数据库 脚本

    Python调用API接口的几种方式 2018-01-08 gaoeb97nd... 转自 one_day_day... 修改 微信分享: 相信做过自动化运维的同学都用过API接口来完成某些动作.AP ...

  5. Python调用API接口的几种方式

    Python调用API接口的几种方式 相信做过自动化运维的同学都用过API接口来完成某些动作.API是一套成熟系统所必需的接口,可以被其他系统或脚本来调用,这也是自动化运维的必修课. 本文主要介绍py ...

  6. jquery使用淘宝接口跨域查询手机号码归属地实例

    <h1>手机号码归属地查询</h1>    <div class="outer">        <p>请输入手机号码</p& ...

  7. 调用webservice查询手机号码归属地信息

    Web Services是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务.在这里我们使用soap协议往webservice发送信息,然 ...

  8. Apsara Clouder专项技能认证:实现调用API接口

    一.API 简介 1.API 的概念 API(Application Programming Interface应用程序编程接口)是一些预定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访 ...

  9. spring boot 通过feign调用api接口

    目的:远程调用服务器api,直接上步骤: 1,添加maven依赖,这是必须的: <dependency> <groupId>org.springframework.cloud& ...

随机推荐

  1. Pandas Series数据结构基本操作

    >>> import pandas >>> import numpy as np >>> from pandas import Series,Da ...

  2. Python文章导航

    1.Python+Eclipse安装.配置: http://www.cnblogs.com/rhyswang/p/8087752.html 2.数学运算及math库: http://www.cnblo ...

  3. 前端学习笔记——HTML

    1.前端的三把利器 HTML:我们把它比喻成赤裸的一个人 CSS:华丽的衣服 JS/JavaScript:赋予这个人的行为,也就是动起来 2.什么是HTML? HTML 是用来描述网页的一种语言.ht ...

  4. 力扣算法——139WordBreak【M】

    Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine ...

  5. oracle知识博客链接

    http://blog.csdn.net/YiQiJinBu/article/category/1100395/1

  6. C语言printf函数

    #include<stdio.h> //int float double short char long int main() { //int printf(const char *for ...

  7. javascript 中的函数

    /*   第二天   */ 函数 函数是js里最有趣的东西了,函数实际上就是对象,每个函数Function类型的实例,函数名实际上是指向函数对象的指针.不带圆括号的函数时访问函数的指针,带圆括号的是调 ...

  8. 遇到的css问题

    1.上下两个div高度重叠:原因是上面的div中存在浮动,且没有设置高度,解决方案:外面再套一个div,设置高度或overflow:hidden 2.上下两个div存在间隙:原因是有div的displ ...

  9. opensns功能详解

    <!DOCTYPE html> opensns功能详解 wmd-preview h1 { color: #0077bb; /* 将标题改为蓝色 */ } opensns功能详解 软件工程 ...

  10. Andoid之硬件访问服务1(让Andoid应用程序访问c库)

    andoid 项目文件结构图 新建Hardcontrol.java package com.thisway.hardlibrary; public class HardControl { public ...