python 手机号码归属 ip地址查询
Python脚本实例 包括xml,json,http,编码
这几天在研究python相关的一些东西,其中涉及的内容包括:
xml的解析,json的解析,urllib的使用,urllib的使用,python中中文编码的问题等
项目托管在Google上,地址是http://code.google.com/p/ipmobile/source/checkout
当然一切都来源于实际工作嘛,首先引入缘由,情景是这样的:
有一个Excel表格,有注册日期,用户ID,注册IP,注册手机号这几个字段,
但现在需要获取注册IP所在的地址 以及手机号所属地区等信息,
并根据这些信息进行分类统计等工作
当然如果在没有编码人员介入的情况下,
需要一个个的到一些网络上的页面上查出地址的信息,然后填到excel里,
而这完全是重复劳动,完全可以抽象并做出系统,在没有人力进行系统开发的情况下,
可以使用简单的脚本进行替代,
本文中,本人使用python脚本进行了相关研究和实验性的工作.用Python写出的代码的可读性非常的高的
首先是一个简单的例子使用过的是有道的接口获取IP和手机号码的地址的
#!/usr/bin/env python #coding=utf-8 """ import urllib def gbk2utf8(xml): def get_ip_info(ip): def get_mobile_info(mobile): def main(): if __name__ == '__main__': |
这段代码从有道那获得的结果是xml编码格式为gbk的,所以在编码上我将其先转换成utf8的,然后再通过xml2dict将其转换成Python的字典结构,这样我就可以直接读取节点的值了.
这段代码还使用了urllib模块还有读文件写文件的相关知识点,总体来说还是很简单的,主要就是字符串的拼接了,这里的文件格式都是csv的很容易就可以编程excel的格式
但是问题来了,有的IP地址在有道这里查不出来,而在ip138这个网站上可以查出来,后来试了好多,发现IP138的数据库的数据貌似全一些,但是IP138没有提供任何数据读取的API,那怎么办呢?嘿嘿,那就用最那个的办法了,在脚本里解析使用正则表达式处理html,解析出想要的结果,代码如下:
""" ip138poster.py Created by Luke on 2009-05-04. Copyright (c) 2009 Alibaba. All rights reserved. """ import httplib,urllib; #加载模块 class Ip138Poster: def __init__(self): def post(self,ip_addr): def get_main_data(self,ip_addr): def __del__(self): ##由于需要匹配中文,所以需要转换,然后再匹配 def GBK2Hex(s): if __name__ == '__main__': |
这里我还提供一个json的可选方案,可惜的是目前我没有发现国内的可以使用json协议获取ip地址信息的API(SOAP的万网好像有个),所以IP的API是使用国外的,手机号码信息查询国内是有API的,可以直接使用,代码非常非常简单,如下:
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
#!/usr/bin/env python # encoding: utf-8 """ locatingsystem.py Created by Luke on 2009-05-04. import sys class LocatingSystem: def get_mobile_json(self,mobile): def main(): if __name__ == '__main__': |
python 手机号码归属 ip地址查询相关推荐
- python手机版代码-Python手机号码归属地查询代码
简单的一个例子,是以前用Dephi写的,前不久刚实现了一个在Python中使用Delphi控件来编写界面程序,于是趁热写一个类似的的查询方案. 本实例是通过www.ip138.com这个网站来查询的, ...
- 全球IP归属地查询 IP地址查询
全球IP归属地查询 IP地址查询 推荐一个非常简单的全球IP归属地查询 IP地址查询接口,只需要传入要查询的IP,即可返回相应的基本信息,以下是演示 请求地址是:http://ip.wyk-super ...
- java ip归属地查询_JAVA版IP地址查询调用示例
package cn.juhe; import net.sf.json.JSONObject; import org.springframework.web.client.RestTemplate; ...
- 网络管理利器,通过IP地址查询跟踪网络
在网络管理中,IP地址是一个非常重要的部分. 允许确定计算机的位置并且能够进行通信.Python提供了一些很棒的库来帮助进行IP地址查询.使用这些库来确定IP地址的地理位置,并且如何利用这些信息来进行 ...
- java webservice ip_通过Web Service实现IP地址查询功能的示例
实例01 实现一个简单的Web服务访问 本实例将实现IP地址查询接口服务,根据用户传入的IP地址返回IP所在的省.市.地区,实例中将会用到IP地址库用于查询信息,由于数据较多,所以读者可在光盘资源文件 ...
- 利用IP地址查询接口来查询IP归属地
如果我们在项目中需要获得用户的地址,而不仅仅是获得用户的IP,为了避免在自己的数据库里添加IP库,可以直接调用网上的第3方IP地址查询接口来查询IP归属地.今儿个在网上了解了这些接口,要么返回XML, ...
- 通过Web Service实现IP地址查询功能
实例01 实现一个简单的Web服务访问 本实例将实现IP地址查询接口服务,根据用户传入的IP地址返回IP所在的省.市.地区,实例中将会用到IP地址库用于查询信息,由于数据较多,所以读者可在光盘资源文 ...
- Python10行代码制作企业内网IP地址查询网站
企业内部您是否遇到过IP无法定位和查询的情况,而网络和运维的部分平台不便开放给其他用户.所以本次搭建简单的IP查询网站给普通用户使用, 环境: 1.mongodb(可使用其他数据库),数据库安装可自行 ...
- 用java程序编写ip仿真器_用java 编写一个可以实现IP地址查询功能的课程设计
展开全部 下面是获得本机IP地址的方法,跟你的程序捆绑起来,互相发送消息的时候直接将IP发送过去 private static String[] getAllLocalHostIP(){ 323131 ...
- android的百度地图sdk获取ip,基于百度地图API的ip地址查询
说明:使用ip地址查询太麻烦,偶然搜索发现有人已经写过基于百度API的ip地址查询,这个是前人的结晶,我只是修改了一些,勿喷. 用的python2.7,编码问题真是坑. 百度mapAPI私钥申请:ht ...
最新文章
- oracle 数据库创建表
- 在QT搭建的播放器外壳中嵌入SDL的窗口
- c语言测验答案,C语言测验题答案.doc
- 九十七、轻松搞定Python中的PDF办公自动化系列
- 交叉驰豫的影响因素_交叉滚子轴承系列吉林薄壁交叉滚子轴承用途博盈
- 计算机管理术语路径描述的是,directory
- 55种数据可视化开源工具_8种出色的开源数据可视化工具
- JAVA开发血泪之路:一步步搭建spring框架
- mysql carnation_14 springboot+mybatis集成pageHelper分页
- Android 对话框用法
- Java中IO流有哪些
- 大型企业用什么orm_企业信息化系统建设的方案有什么用?
- bochs运行xp_bochs安卓最新版下载
- 地铁运营行车组织方式
- JS实现答题上一题下一题
- 【Buzz】离线语音转文字、实时语音识别
- 【OR】YALMIP 二阶锥规划
- swagger配置使用及安全方案
- 揭秘老外聊天时常用的英文缩写
- 如何完全卸载VS2010(亲自体验过)