没有国家代码的反向电话号码查询

时间:2016-02-04 16:41:05

标签: libphonenumber

我一直在使用googles libphonenumber来执行美国电话号码的验证。现在我需要所有国家的国际支持。是否可以使用libphonenumber反向查找电话号码国家/地区代码?

假设数据库已保存英国号码+448456779463。是否有可能使用libphonenumber来检测该号码是否为英国?看来我只能检查数字的有效性,前提是我知道它的原产国。但是,如果你有数字并且不知道它的原籍国该怎么办?

2 个答案:

答案 0 :(得分:2)

Twilio的Lookup工具在这里可能会有所帮助。

它将仅根据数字输入返回国家/地区代码,您可以通过API检索有关手机的其他信息。

https://www.twilio.com/docs/api/lookups

[披露:我为Twilio工作]

答案 1 :(得分:0)

您可以使用libphonenumber

以下是python中的示例

import phonenumbers
number = "+44XXXXXXXX"
obj = phonenumbers.parse(number)

# get line type
phonenumbers.number_type(obj)

# validate phone
phonenumbers.is_valid_number(obj)

# validate phone for region
phonenumbers.is_valid_number_for_region(obj, "GB")

# get country name
from phonenumbers.geocoder import country_name_for_number
country_name_for_number(obj, "en")

我认为以下是你所期待的,

from phonenumbers.geocoder import region_code_for_number
phonenumbers.is_valid_for_region(obj, region_code_for_number(obj))