我从pypi得到了这个代码:
from phonenumbers import carrier
ro_number = phonenumbers.parse("+40721234567", "RO")
carrier.name_for_number(ro_number, "en")
输出:
'Vodafone'
我在印度。当我为我的电话号码编写此代码时,它运行良好并显示 Airtel。
但我的项目是寻找美国电话号码的运营商
+1xxx xxx xxx。当我为美国号码执行此操作时,它返回一个空字符串,因为映射未完成。
请帮助我为美国号码执行此操作。
我应该更改我的笔记本电脑位置吗?我不知道怎么办。
还是我应该添加 pycountry ?
请帮我。
最佳答案
我有点晚了,但我找到了解决方案。 phonenumbers 不适用于美国电话号码。我写了一个小脚本来免费从美国电话号码中获取运营商。这里是:
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)
carrier = data["carrier"]["name"]
return carrier
它所做的只是从 URL 中抓取一些 json 并返回载体。希望有人觉得这很有用!关于python-3.x - 使用python查找全局电话运营商,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54871005/