python实现手机号归属地查询

shigen坚持更新文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。

手机上突然收到了某银行的短信提示,看了一下手机的位数,正好是11位。我一想,这不就是标准的手机号码吗?于是一个想法涌上心头------用python的库实现查询手机号码归属地查询自由。因为熟悉shigen的伙伴都知道,之前出过这样的一篇文章:程序员必备的IP查询工具。

那实现的效果如下:

注:电话和IP均为模拟值,没有实际的参考价值。

接下来讲一下代码的实现:

电话的归属地查询主要用到的库是phone,在pip上显示是最近更新的:

官网的介绍也是极其的简单:

这里我们直接自己写代码验证:

python 复制代码
 from phone import Phone
 '''
 官方文档:https://github.com/ls0f/phone
 pip地址:https://pypi.org/project/phone
 '''
 ​
 p = Phone()
 ​
 ​
 def parse_phone_num(phone_num: str) -> dict:
     return p.find(phone_num)
 ​

最后和之前的IP地址查询的代码做一个综合,实现命令行参数解析调用:

python 复制代码
 import argparse
 ​
 from phoneUtil import parse_phone_num
 from xdbSearcher import getIpRegin
 ​
 if __name__ == '__main__':
     parser = argparse.ArgumentParser(description='通过电话号码或IP地址查询归属地信息')
     parser.add_argument('-p', dest='phone', help='通过电话号码查询归属地')
     parser.add_argument('-i', dest='ip', help='通过IP地址查询归属地')
     args = parser.parse_args()
 ​
     if args.phone:
         phone_info = parse_phone_num(args.phone)
         print(f'{args.phone}:{phone_info}')
     if args.ip:
         ip_info = getIpRegin(args.ip)
         print(f'{args.ip}:{ip_info}')

注:代码的命名规范上还是存在一些问题。

最后还是和之前一样,在系统的环境变量里加上alias,就可以在任何地方使用了。

javascript 复制代码
 python3 ~/PycharmProjects/shigen-util/iputil/main.py $1

工具类的文档也是很详细,可以轻松的使用:


以上就是今天分享的全部内容了,觉得不错的话,记得点赞 在看 关注支持一下哈,您的鼓励和支持将是shigen坚持日更的动力。同时,shigen在多个平台都有文章的同步,也可以同步的浏览和订阅:

平台 账号 链接
CSDN shigen01 shigen的CSDN主页
知乎 gen-2019 shigen的知乎主页
掘金 shigen01 shigen的掘金主页
腾讯云开发者社区 shigen shigen的腾讯云开发者社区主页
微信公众平台 shigen 公众号名:shigen

与shigen一起,每天不一样!

相关推荐
万少9 分钟前
Qoder sonus模型 20分钟,复刻 马斯克 飞天汽车
前端·后端·算法
白露与泡影20 分钟前
Spring Boot 实现验证码:Hutool-captcha、AJ-Captcha、EasyCaptcha 到底怎么选?
java·spring boot·后端
小蒜学长34 分钟前
基于Springboot+Vue的高校教师教学业绩综合管理系统的设计与开发(代码+数据库+LW)
java·数据库·spring boot·后端·教学业绩管理·三级权限
熊哈哈O_o36 分钟前
千亿级时序数据:存储压缩、高速写入与时序超表技术
后端
Mikko736 分钟前
Spring Boot 3.5.16 自带的 Tomcat 10.1.55 中了哪些 CVE?其中一条是修上一个漏洞时带进来的
java·spring boot·后端·安全·tomcat
站大爷IP43 分钟前
Python的字符串查找把我坑惨了,原来find和index的区别这么大
后端
sp4244 分钟前
一个支持 Java 8 的 MCP SDK(支持最新 2026-07-28 协议)
后端·mcp
Gopher_HBo1 小时前
HTTP2传输层与流控
后端
Bazingga1 小时前
同一个脑子,不同的身体:桌面办公智能体全景拆解
后端
用户302822530681 小时前
你的 API 只返回 30 条,为什么数据库还是被打满了?
数据库·后端·架构