我希望能够跟踪我的计算机地理位置。到目前为止,我已经设法实现了一个策略,即使用我的IP地址来获取地理位置。不幸的是,这种方法不够精确。我希望能够以类似于Iphone可以执行的操作,房屋和街道号码的方式跟踪我的计算机。从阅读中我知道,人们仍然可以利用Wifi,手机和GPS对您当前的位置进行三角测量。有了谷歌地图等其他服务,我知道这绝对是可能的。我只是没有成功找到任何我可以实现到python代码中的东西。
总而言之,我会感谢任何有用的建议,允许有人找到计算机的地理位置;没有IP地址策略。谢谢!
编辑1: 如果您有兴趣了解到目前为止代码的样子,请参见示例:
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
答案 0 :(得分:1)
手机通过Wi-Fi获取您的位置的方式是Google / Apple专有的。他们经常在设备在室外时对Wi-Fi接入点进行采样,并具有GPS锁定以将该AP与位置相关联。您必须使用专有服务才能从IP获得该级别的详细信息。
如果您想使用物理GPS设备获得精确位置,可以使用gpsd
及其python绑定,如下所示:
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)