【问题标题】:what service am I using if I didn't specify geopy.geocoder user_agent?如果我没有指定 geopy.geocoder user_agent,我使用什么服务?
【发布时间】:2020-10-14 15:01:21
【问题描述】:

我正在使用 geopy.geocoder 获取大量位置的坐标。我没有指定 user_agent,我只是将我的电子邮件作为字符串作为“user_agent = 'shuning@xxx.com'”。我通过这种方式成功顺利得到结果,但我想知道我使用的是什么api服务。

我的主要代码在这里:

from geopy.geocoders import Nominatim

from geopy.exc import GeocoderTimedOut

geolocator = Nominatim(user_agent='shuning@xxx.com')

result = geolocator.geocode(location, timeout = 100)

非常感谢!

【问题讨论】:

  • 该类的文档解释并提供了默认用户代理的链接
  • 非常感谢!但是该课程的文档是什么?很抱歉,我不知道我应该去哪里寻找它......
  • 当然,我从未使用过 geopy。所以我在 DuckDuckGo 中输入“geopy 文档”,单击第一个结果中的链接,展开目录的“geocoders”部分,单击“Nominatim”部分。这是一个非常快速的过程。

标签: python geopy geocoder


【解决方案1】:

用户代理不是为了请求特定的 API 服务,而是告诉 Nominatim API 是谁在发出请求。

您只是通过用户代理发送请求,以便 API 可以识别正在执行 API 调用的应用程序。

编辑:

随你使用
from geopy.geocoders import Nominatim

geolocator = Nominatim(user_agent='shuning@xxx.com')
您正在调用 nominatim API。
该网站可以找到here

您可以从GeoPy 的文档中收集所有这些信息。
你可以找到here
您可以在 geopy 中使用不同的 API。
所有相关信息也可以在 API 文档中找到。

【讨论】:

  • 我明白了!谢谢!但是,这些结果来自什么服务器(例如,google、bing、其他地图)...?
  • 我添加了一些解释它的东西!
  • 很高兴我能帮上忙!如果它回答了您的问题,请将其标记为已回答!
猜你喜欢
  • 2010-10-10
  • 1970-01-01
  • 2014-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多