我从pypi得到了这段代码:
from phonenumbers import carrier
ro_number = phonenumbers.parse("+40721234567", "RO")
carrier.name_for_number(ro_number, "en")
输出:
'Vodafone'
我在印度。当我为电话号码编写此代码时,它可以正常工作并显示Airtel。 但是我的项目是寻找美国电话号码的载体 + 1xxx xxx xxx。当我为美国号码执行此操作时,它会返回一个空字符串,因为未完成映射。
请帮助我针对美国号码进行此操作。
我应该更改笔记本电脑的位置吗?我不知道该怎么办。
还是应该添加pycountry?
请帮助我。
答案 0 :(得分:2)
我有点迟了,但是我找到了解决方案。电话号码不适用于美国电话号码。我写了一个小脚本,免费从美国电话号码中获取运营商。在这里:
import requests
import json
def getCarrier(number):
url = 'https://api.telnyx.com/v1/phone_number/1' + number
html = requests.get(url).text
data = json.loads(html)
data = data["carrier"]
carrier = data["name"]
return carrier
它所做的就是从URL刮一些json并返回载体。希望有人觉得这有用!