This program is for giving the carrier and the country of a specific number , but it's just return the carrier without country

216 Views Asked by At

there is the code :

import phonenumbers
from phonenumbers import geocoder
number = input("enter the number : ")
ch_number = phonenumbers.parse(number, "CH")
print(geocoder.description_for_number(ch_number, "english"))

from phonenumbers import carrier 
service_number= phonenumbers.parse(number , "RO")
print(carrier.name_for_number(service_number , "english"))

I can't realise what the problem is !

1

There are 1 best solutions below

1
Rory On

As Barmar suggested, switching "english" to "en" fixes the issue.

import phonenumbers
from phonenumbers import geocoder, carrier    

number = "+919876543210"  # example input
ch_number = phonenumbers.parse(number, 'CH')
print("Region: " + geocoder.description_for_number(ch_number, "en"))

service_number= phonenumbers.parse(number , 'RO')
print("Carrier: " + carrier.name_for_number(service_number , "en"))

Prints:

Region: India
Carrier: Airtel