手机归属地运营商查询

简介

根据手机号确定手机号运营商即归属地, 支持包括虚拟运营商的中国大陆手机号查询.
Github: https://github.com/EeeMt/phone-number-geo

数据源

数据源dat文件来自xluohome/phonedata提供的数据库, 会不定时同步更新数据库

当前数据源版本: 201911 最新版本请移步https://github.com/EeeMt/phone-number-geo

maven

可以通过maven引入工程:

<dependency><groupId>me.ihxq.projects</groupId><artifactId>phone-number-geo</artifactId><version>x.x.x-xxxxxx</version>
</dependency>

在这里获取最新版号.

示例

class Demo1{public static void main(String[] args){PhoneNumberLookup phoneNumberLookup = new PhoneNumberLookup();PhoneNumberInfo found = phoneNumberLookup.lookup("18798896741").orElseThrow(RuntimeException::new);}
}
class Demo2{public static void main(String[] args){PhoneNumberLookup phoneNumberLookup = new PhoneNumberLookup();String province = phoneNumberLookup.lookup("130898976761").map(PhoneNumberInfo::getAttribution).map(Attribution::getProvince).orElse("未知");}
}
class Demo3{public static void main(String[] args){PhoneNumberLookup phoneNumberLookup = new PhoneNumberLookup();PhoneNumberInfo found = phoneNumberLookup.lookup("18798896741").orElseThrow(RuntimeException::new);found.getNumber(); // 18798896741found.getAttribution().getProvince(); // 贵州found.getAttribution().getCity(); // 贵阳found.getAttribution().getZipCode(); // 550000found.getAttribution().getAreaCode(); // 0851found.getIsp(); // ISP.CHINA_MOBILE}
}

对比libphonenumber

对比libphonenumber, libphonenumber有更多功能, 包括验证号码格式, 格式化, 时区等,
但基于xluohome/phonedata提供的dat数据库能囊括包含虚拟运营商号段的更多号段.

至于速度, 未做比较, 但本仓库实现已足够快, 选择时建议更多权衡易用性, 功能和数据覆盖范围.

Benchmark

工程里已内置四种算法, 跑分情况如下:

Benchmark                                   Mode  Cnt        Score       Error  Units
BenchmarkRunner.anotherBinarySearchLookup   avgt    5      390.483 ±     3.544  ns/op
BenchmarkRunner.binarySearchLookup          avgt    5      386.357 ±     3.739  ns/op
BenchmarkRunner.prospectBinarySearchLookup  avgt    5      304.622 ±     1.899  ns/op
BenchmarkRunner.sequenceLookup              avgt    5  1555265.227 ± 48814.379  ns/op

性能测试源码位于me.ihxq.projects.pna.benchmark.BenchmarkRunner, 基于JMH

测试样本在每次启动时生成, 供所有算子测试使用, 所以每次测试结果有差异, 结果可用于横向比较, 不适用于纵向比较.

默认使用的是me.ihxq.projects.pna.algorithm.BinarySearchAlgorithmImpl,
可以通过new PhoneNumberLookup(new AlgorithmYouLike());使用其他算法;

也可自行实现算法, 实现me.ihxq.projects.pna.algorithm.LookupAlgorithm即可.

Github: https://github.com/EeeMt/phone-number-geo

如若有帮助, 请点个Star.

手机号归属地运营商查询-JAVA相关推荐

  1. 号码归属地及运营商查询工具

    号码归属地及运营商查询工具 import com.google.i18n.phonenumbers.NumberParseException; import com.google.i18n.phone ...

  2. python获取手机号码归属地_Python批量获取并保存手机号归属地和运营商的示例

    从Excel读取一组手机号码,批量查询该手机号码的运营商和归属地,并将其追加到该记录的末尾. import requests import json import xlrd from xlutils. ...

  3. python自动获取号码归属地_Python批量获取并保存手机号归属地和运营商的示例

    从Excel读取一组手机号码,批量查询该手机号码的运营商和归属地,并将其追加到该记录的末尾.SAb免费资源网 import requests import json import xlrd from ...

  4. 通过python获取自己的手机话费_Python批量获取并保存手机号归属地和运营商的示例...

    从Excel读取一组手机号码,批量查询该手机号码的运营商和归属地,并将其追加到该记录的末尾. import requests import json import xlrd from xlutils. ...

  5. 调用第三方API ,实现手机号码归属地及运营商查询

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 运行结果: 中国电信 西双版纳 西双版纳,中国电信 代码: import java.io.Buffe ...

  6. 手机号码归属地及运营商查询

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. import java.io.InputStreamReader; import java.net. ...

  7. 老板丢给我一堆电话号码,让我挨个进行归属地、运营商查询

      如果觉得文章写得好,如果你想要博客文章中的数据,请关注公众号:[数据分析与统计学之美],添加作者[个人微信],进群和作者交流! 目录   1.写作目的   2.判断电话号码是否合法    1)移动 ...

  8. 2022年最新IP归属地运营商地区经纬度查询API接口分享

    请求方式:http get 返回格式:json 请求示例:https://www.345api.com/api/ipv2/query?key=key&ip=ip地址 { "code& ...

  9. Java判断手机号对应的运营商

    实现代码: 常量类Const /*** 中国电信号码格式验证 手机段: 133,153,180,181,189,177,1700,173,199**/ public static final Stri ...

最新文章

  1. python信用卡违约_Python信用卡验证
  2. ckeditor富文本编辑器的基本配置设置:
  3. 博客园首页博问闪存新随笔联系订阅管理 随笔- 252 文章- 0 评论- 45 HashPasswordForStoringInConfigFile中的Md5算法并非常用的Md5算法...
  4. 阿里财报:云计算年度营收133亿,季度营收连续12个季度翻番
  5. android 8.0 调系统拍照_Android通知栏微技巧,8.0系统中通知栏的适配
  6. SAP BW系统日常维护日常工作及常见的Infopackage错误
  7. ADO.NET中在C/S模式中使用的连接池
  8. 网络管理人员的未来?
  9. 【转载】使用tf.py_func函数增加Tensorflow程序的灵活性
  10. 计算机时区找不到北京,系统缺少北京时区的解决办法
  11. uva10817 dijkstra
  12. erp的术语-jde系统
  13. 腾讯云租用CentOS 7.2 64
  14. 将加密的pdf转化成word
  15. USB PD快充协议
  16. 对比 GA 、PSO 、DE三种算法 求解连续优化问题的性能
  17. java接口保存文件到本地指定目录下
  18. thinkphp3.2 微信 Native扫码支付功能
  19. 一周上榜新书:强化学习、深度学习最受程序员关注
  20. Simulation?Emulation?模拟?仿真?

热门文章

  1. tensorflow conv2d()参数解析
  2. struts2文件上传和下载
  3. 2018年北京AQI全年走势图
  4. 网络数据采集分析工具tcpdump定义抓包过滤器
  5. QQ安全检查未通过,禁止下载该文件
  6. Python教你18个高效编程的方法
  7. kindle paperwhite3 android,Kindle Paperwhite3入手20天感受
  8. 题源报刊精品阅读-词汇1
  9. plt.contour
  10. 苹果删除照片不释放内存_别再胡乱清理垃圾了,只要删除这6个文件夹,瞬间释放20GB内存...