Ultima modifica:
Grazie, sono andato a vedere come hai fatto, adesso posso prelevare anche più informazioni.Leggi bene la documentazione, devi specificare infields
i campi che ti interessano:
response = requests.get(f"http://ip-api.com/json/{ip_address}?fields=66846719").json()
La documentazione interattiva propone i vari campi con le checkbox, puoi specificarli con i nomi per intero separati da virgola oppure con il numero che genera lui (probabilmente una bitmask). Il numero che ho messo io è per tutti i campi supportati.
Messaggio unito automaticamente:
Ecco il codice funzionante, GRAZIE!
Python:
import requests
from colorama import Fore # BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE
from colorama import Style # DIM, NORMAL, BRIGHT, RESET_ALL
reset = Style.RESET_ALL
blul = Fore.LIGHTBLUE_EX # Colora Blu e rende il testo brillante
def ipinfo(continua=True):
print(f"{blul}Dr. Fato è pronto per localizare l'IP{reset}")
if continua:
ip_address = input("Inserisci un indirizzo IP: ")
response = requests.get(f"http://ip-api.com/json/{ip_address}?fields=66846719").json()
if response['status'] == 'success':
print(f"Ecco i risultati per l'IP: {response['query']}")
network_type = 'mobile' if response['mobile'] else 'terrestre'
print(f"Connesso alla rete {network_type}")
network_vpn = 'non attendibili perchè connesso ad un proxy o VPN' if response['proxy'] else 'attendibili'
print(f"Informazioni {network_vpn}")
print(f"Stato: {response['country']} ({response['countryCode']})")
print(f"Regione: {response['regionName']} ({response['region']})")
print(f"Città: {response['city']} ({response['zip']})")
print(f"Latitudine: {response['lat']}")
print(f"Longitudine: {response['lon']}")
print(f"Fuso Orario: {response['timezone']}")
print(f"Provider (ISP): {response['isp']} ({response['org']}) {response['as']}")
else:
print("Impossibile ottenere informazioni per l'indirizzo IP specificato.")
scelta = input("Vuoi controllare un altro IP? (S/N): ")
if scelta.upper() == "S":
ipinfo()
elif scelta.upper() == "N":
ipinfo(continua=False)
else:
print("Scelta non valida.")
else:
print("E' un piacere esserti stato di aiuto!")