首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python查找,从非宜居地区的坐标到位置/地址

Python查找,从非宜居地区的坐标到位置/地址
EN

Stack Overflow用户
提问于 2014-10-08 05:39:51
回答 1查看 886关注 0票数 0

你好,所有的…我的问题是如何找出一对地理坐标的位置。对不起,问题很零碎,因为我做了一些搜索,把它们放在一起仍然找不到正确的方法。

1问题:如果一些非英语单词的输出不是问题,似乎地理编码是最好的方法。(热烈欢迎任何解决非英语输出问题的帮助)

然而,我需要搜索的一些坐标是在不适合居住的地区。

下面是一个例子:

代码语言:javascript
复制
from geopy.geocoders import Nominatim

geolocator = Nominatim()
location = geolocator.reverse("81.79875708, -42.1875")
print(location.address)

它回来了。

代码语言:javascript
复制
None

https://maps.google.com/上搜索这个坐标时,它指出最近的识别点“东北格陵兰国家公园”,这比“没有”要好。

那么,我如何才能得到“最近的识别点”呢?

关于使用“pygmap”的第二个问题

代码语言:javascript
复制
aamap = pygmaps.maps(81.79875708, -42.1875, 16)

产出如下:

代码语言:javascript
复制
<pygmaps.maps instance at 0x000000000313CC08>

它的用途是什么,以及如何将它转化为文本?

使用“Json”方式第3问题:

代码语言:javascript
复制
response = urllib2.urlopen('https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA')
js  = json.load(response)
print js['results'][0]['geometry']['location']

有办法逆转吗?即使用坐标来找出它的地址。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-08 06:49:29

我不能回答您所有的问题,但是,关于您的第二个问题,我想您使用了print(aamap)来获得输出。打印未指定打印方式的对象时的默认行为是打印其类及其内存位置。这就是你得到的结果。

代码语言:javascript
复制
<pymaps.maps instance at 0x0000000000313CC08>

测试此代码以了解:

代码语言:javascript
复制
class NotPrintable(object):
    def __init__(self, text):
        """ Instanciation method """
        self.text = text

class Printable(object):
    def __init__(self, text):
        """ Instanciation method """
        self.text = text

    def __repr__(self):
        """ Text representation of the object called by print"""
        return "A printable object whose the value is : {0}".format(self.text)

if __name__ == "__main__":
    print( NotPrintable("StackOverFlowTest") )
    print( Printable("StackOverFlowTest") )

结果是:

代码语言:javascript
复制
<__main__.NotPrintable object at 0x7f2e644fe208>
A printable object whose the value is : StackOverFlowTest

您得到的结果表明,您不应该打印项目来可视化其内容。"google“上的快速搜索将我带到这个站点:https://code.google.com/p/pygmaps/它提供了使用pymaps的代码示例,看起来可视化数据的好方法是:

代码语言:javascript
复制
#create the map object
mymap = pygmaps.maps(37.428, -122.145, 16)
#export the map
mymap.draw('./mymap.html')

创建包含映射的HTML页面。如果感兴趣,您可以查看https://code.google.com/p/pygmaps/source/browse/trunk/pygmaps.py的映射代码,但它似乎是输出对象数据的唯一方法。如果您真的需要提供文本输出,您可能需要自己编写导出代码。

希望能帮上忙!

=====EDIT=====

有关googlemap,请参阅文档:https://developers.google.com/maps/documentation/geocoding/

您可以在第一行中找到有关逆向地理编码的信息,即

这个过程..。将地图上的位置转换成人类可读的地址,称为逆向地理编码.

请参阅以下详细内容:https://developers.google.com/maps/documentation/geocoding/#ReverseGeocoding

下面是一个查询有关纬度为"40.71“、经度为"-73.96”的位置的信息的示例:

代码语言:javascript
复制
https://maps.googleapis.com/maps/api/geocode/json?latlng=40.71,-73.96&key=API_KEY

以下是关于API_key:https://developers.google.com/console/help/#UsingKeys的文档

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26249886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档