phonetracker / app.py
qdqd's picture
Update app.py
7c935ed
import streamlit as st
import phonenumbers
from phonenumbers import geocoder, carrier, is_valid_number
def track_phone_number_details(phone_number_str):
try:
phone_number = phonenumbers.parse(phone_number_str, None)
if phonenumbers.is_valid_number(phone_number):
location_info = geocoder.description_for_number(phone_number, "en")
carrier_info = carrier.name_for_number(phone_number, "en")
is_valid = "Valid" if is_valid_number(phone_number) else "Invalid"
details = {
"Phone Number": phone_number_str,
"Valid": is_valid,
"Location": location_info,
"Carrier": carrier_info,
"Country Code": phone_number.country_code,
"National Number": phone_number.national_number,
}
return details
else:
return {"Error": "Invalid phone number."}
except phonenumbers.NumberParseException:
return {"Error": "Invalid phone number format."}
def main():
st.title("Phone Number Details Tracker")
st.write("Enter a phone number below to get its details:")
phone_number_str = st.text_input("Phone Number:")
if st.button("Get Details"):
details = track_phone_number_details(phone_number_str)
st.write("Details:")
for key, value in details.items():
st.write(f"{key}: {value}")
if __name__ == "__main__":
main()