2017-04-10 1 views
-1

Je voudrais être en mesure de suivre l'emplacement géographique de mon ordinateur. Jusqu'à présent, j'ai réussi à mettre en œuvre une stratégie, qui consiste à utiliser mon adresse IP afin d'obtenir un emplacement géographique. Malheureusement, cette méthode n'est pas assez précise. Je voudrais être capable de suivre mon ordinateur avec une précision similaire à ce que Iphones peut faire, maison et numéro de rue. De la lecture, je sais que l'on peut toujours utiliser Wifi, téléphone portable et GPS pour trianguler votre position actuelle. Avec d'autres services comme Google Maps là-bas, je sais que c'est certainement possible. Je n'ai pas réussi à trouver quelque chose que je pourrais implémenter dans du code python. Donc, pour résumer, j'apprécierais toutes les suggestions utiles qui permettent à quelqu'un de trouver l'emplacement géographique d'un ordinateur; sans la stratégie d'adresse IP. Merci!Trouver l'emplacement géographique de l'ordinateur python

Edit 1: Si vous êtes curieux de voir ce que le code ressemble jusqu'à présent, voici l'échantillon:

import urllib2 
import json 


url = 'http://ipinfo.io/json' 
response = urllib2.urlopen(url) 
IP_Info = response.read() 
IP_List = json.loads(IP_Info) 

#info = json.loads(urllib2.urlopen(url).read()) 
ip = IP_List['ip'] 
loc = IP_List['loc'] 
print ip 
print loc 
+1

Votre question manque beaucoup d'informations. Est-ce une application web? Utilisez-vous la fonction "partage d'emplacement" du navigateur ou utilisez-vous un service GeoIP? Qu'avez-vous essayé (montrez-nous votre code). Si vous voulez éviter les downvotes, vous devez nous montrer le code que vous avez essayé. – djsumdog

+0

Je suis désolé, mais je ne sais pas beaucoup de choses sur ce sujet, par ce que je demande. Tout ce que j'ai essayé est l'utilisation de l'ip, comme indiqué ci-dessus, mais ce n'est pas assez précis. Je voudrais obtenir de meilleurs résultats, comment, je n'en ai aucune idée. Je pensais utiliser google maps pour améliorer mes résultats, dans un premier temps. Je voudrais cependant aussi que le programme essaie différentes stratégies, de sorte que si l'un échoue, peut-être que le prochain fonctionne mieux. – user3604362

Répondre

1

La téléphones cellulaires ainsi obtenir votre position via le Wi-Fi est la propriété de Google/Apple. Ils échantillonnent souvent des points d'accès Wi-Fi alors qu'un appareil est à l'extérieur et dispose d'un verrou GPS pour associer ce point d'accès à un emplacement. Vous devrez utiliser des services exclusifs pour obtenir ce niveau de détail à partir d'une adresse IP.

Si vous voulez un endroit précis à l'aide d'un appareil GPS physique, vous pouvez utiliser gpsd et ses liaisons python comme ceci:

from gps import gps, WATCH_ENABLE 
import  

gps = gps(mode=WATCH_ENABLE) 
lock = False 
while not lock: 
    report = gps.next() 
    # 3D Fix 
    if report['class'] == 'TPV' and report['mode'] == 3: 
     print(report.lon) 
     print(report.lat) 
     print(report.alt) 
     print(report.speed) 
     print(report.track) 
     print(report.climb) 
    else: 
     time.sleep(5)