¿Podemos programar (probablemente en Python) para obtener la ubicación del servidor desde donde accedemos a la página web?

PD Es solo por diversión y para obtener un conocimiento profundo.

2
Prasun Parate 25 ago. 2020 a las 09:20

2 respuestas

La mejor respuesta

Este es un ejemplo de cómo obtener la ubicación del servidor mediante una de las API.

Hay muchas otras opciones de sitios, como keycdn, iplocation y más.

import json
import urllib.request

GEO_IP_API_URL  = 'http://ip-api.com/json/'

# Can be also site URL like this : 'google.com'
IP_TO_SEARCH    = '87.250.250.3'

# Creating request object to GeoLocation API
req             = urllib.request.Request(GEO_IP_API_URL+IP_TO_SEARCH)
# Getting in response JSON
response        = urllib.request.urlopen(req).read()
# Loading JSON from text to object
json_response   = json.loads(response.decode('utf-8'))

# Print country
print(json_response['country'])
2
Aviv Yaniv 25 ago. 2020 a las 06:34

Puede utilizar herramientas GeoIP como this para obtener la ubicación a partir de la dirección IP. No es 100% exacto, pero por lo general es lo suficientemente cercano.

También hay módulos de Python como GeoIP y python-geoip que hacen básicamente lo que quieres. Si desea obtener los resultados más precisos, debe comprar una base de datos más precisa de MaxMind.

1
Challe 25 ago. 2020 a las 06:27