我想在 python 中获取用户的位置。我认为这是可能的,因为谷歌能够做到这一点(https://maps.google.com/点击方向键下方的圆圈)。
有谁知道怎么做?
我想在 python 中获取用户的位置。我认为这是可能的,因为谷歌能够做到这一点(https://maps.google.com/点击方向键下方的圆圈)。
有谁知道怎么做?
如果您想自己动手,有些网站会以各种格式提供有关您的 IP 地址的信息。
http://ipinfo.io/json将给出如下内容:
{
"ip": "12.34.56.78",
"hostname": "XXXXX.com",
"city": "Saint-Lambert",
"region": "Quebec",
"country": "CA",
"loc": "45.5073,-73.5082",
"org": "AS577 Bell Canada",
"postal": "J4P"
}
就像 Joran 上面所说的那样,这并不准确。我不在圣兰伯特,我在蒙特利尔,但也不是那么远。
您可以使用 urllib2.urlopen 在 Python 中获取它,然后使用 json 模块将其转换为字典。
import json
import urllib2
def location_lookup():
try:
return json.load(urllib2.urlopen('http://ipinfo.io/json'))
except urllib2.HTTPError:
return False
location = location_lookup()
# print city and latitude/longitude
print location['city'] + ' (' + location['loc'] + ')'
对于上面的 JSON 输出,此 Python 代码将给出
Saint-Lambert (45.5073,-73.5082)