python实现手机号归属地查询功能
作者:shigen01
手机上突然收到了某银行的短信提示,看了一下手机的位数,正好是11位,我一想,这不就是标准的手机号码吗?于是想用python的库实现查询手机号码归属地查询自由,所以本文给大家介绍了如何用python实现手机号归属地查询功能,需要的朋友可以参考下
手机上突然收到了某银行的短信提示,看了一下手机的位数,正好是11位。我一想,这不就是标准的手机号码吗?于是一个想法涌上心头——用python的库实现查询手机号码归属地查询自由。
那实现的效果如下:
注:电话和IP均为模拟值,没有实际的参考价值。
接下来讲一下代码的实现:
电话的归属地查询主要用到的库是phone,在pip
上显示是最近更新的:
官网的介绍也是极其的简单:
这里我们直接自己写代码验证:
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地址查询的代码做一个综合,实现命令行参数解析调用:
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
,就可以在任何地方使用了。
python3 ~/PycharmProjects/shigen-util/iputil/main.py $1
工具类的文档也是很详细,可以轻松的使用:
以上就是python实现手机号归属地查询功能的详细内容,更多关于python手机号归属地查询的资料请关注脚本之家其它相关文章!