Changelog

2.4.1

2023-11-23

错误修复

  • Nominatim :修复损坏 featuretype 参数。 (#564 )

2.4.0

2023-08-27

新特点

  • 新的地理编码器: Woosmap 。由Galela贡献。 (#541 )

  • 新的地理编码器: Geokeo 。由Geokeo贡献。 (#490 )

正在中断更改

  • 删除AlGolia Places地理编码器:该服务已关闭。由mtmail贡献。 (#547 )

包装变更

  • 添加对Python3.12的支持。 (#559 )

  • 更新维护人员的电子邮件。

  • GitHub的版本现在与GPG签署了协议。 (#550 )

  • 测试:从Htpbin.org切换到Htpbingo.org。 (#551 )

  • 测试:使用毒素 allowlist_externals 而不是 whitelist_externals 。由Galela贡献。 (#540 )

错误修复

  • RequestsAdapter:默认情况下使用系统CA存储,而不是 certifi 。 (#558 )

  • DataBC :更新服务域和终结点。由五分钱骗子贡献的。 (#557 )

代码改进

  • 将硬编码域移动到 __init__ 所有地理编码器的参数。

2.3.0

2022-11-13

新特点

  • MapBox :添加 referer Param以允许受限的API_KEYS。作者:Dennis Stritzke。 (#501 )

  • MapBox :添加 language 参数设置为 geocode 。作者:Dennis Stritzke。 (#503 )

  • Distance :加减法+右乘运算符。 (#485 )

  • Distance :使Hasable成为可能。 (#485 )

  • Nominatim :添加 namedetails 参数设置为 reverse 。 (#525 )

  • Pelias :添加 countries 参数设置为 geocode 。 (#504 )

  • GoogleV3 :通过原件 error_message 为例外干杯。 (#398 )

包装变更

  • 放弃对Python3.5和3.6的支持。

  • 添加对Python3.10和3.11的支持。

  • 放松geogiclib较高版本的限制,以允许2.x。作者:David Hotham。 (#520 )

  • 将geogiclib较低版本约束提高到1.52以修复可能的问题 ValueError 在……里面 distance.geodesic 由于浮点数的不准确性。 (#466 )

  • 将静态元数据从 setup.pysetup.cfg

废弃

  • Pelias :不推荐使用 country_bias 参数,使用 countries 取而代之的是。 (#504 )

  • IGNFrance :API不再接受身份验证,因此不建议将任何凭据传递给地理编码器类。这些论点应该被删除。 (#496 )

错误修复

  • 可能的修复方法 TypeError 扔了过去 RequestsAdapter 在毁灭的路上。作者:菲利普·卡恩。 (#488 )

  • ArcGIS :如果地址为空,则从LongLabel获取地址。

  • 所有地理编码者:修复了反向地理编码中接近零的坐标的意外科学点格式。 (#511 )

  • BANFrance :修复损坏的反向(看起来他们的API已经以向后不兼容的方式更改: lng Query Arg已重命名为 lon )。

  • IGNFrance :修复由于移除其API中的身份验证而导致的地理编码器损坏。 (#496 )

文档改进

  • 将url添加到GIS Stack Exchange geopy标记。作者:Taras Dubrava。 (#516 )。

  • GeocodeEarth :添加文档和定价URL。朱利安·西米奥尼贡献。 (#505 )。

2.2.0

2021-07-11

新特点

正在中断更改

  • 已删除GeocodeFarm类:服务非常不稳定。 (#445 )

废弃

  • GoogleV3 已从 geopy.geocoders.googlev3 模块到 geopy.geocoders.google 。旧的模块仍然存在是为了向后兼容,但是它将在geopy3中被移除。 (#483 )

错误修复

代码改进

文档改进

  • 稍后将更加明确地说明排序。作者:Mateusz Konieczny。 (#476 )

  • 添加了对地理编码器签名的测试(以确保所有参数都记录在案),并修复了未通过它们的文档字符串。 (#480 )

  • 添加了以下项目的文档 Distance 类和 Distance.destination() 方法 (#473 )

2.1.0

2020-12-27

新特点

  • 中添加对前导加号的支持 Point 构造函数。作者:Azimjon Pulatov。 (#448 )

正在中断更改

  • GoogleV3 :缺少更改 api_key 对错误的警告。 (#450 )

错误修复

  • 修复了geopy 2.0.0中的一个未记录的突破性更改,其中 Distance 类已变为抽象类,因此不能再用于单位转换。 (#435 )

  • Photon 错误地将0.0坐标视为空响应。作者:Mateusz Konieczny。 (#439 )

  • Nominatim :修复空的TypeError reverse 结果。 (#455 )

文档改进

  • 将Python3.9添加到支持的版本列表中。

  • Bing :更改 postalcodepostalCode 。撰稿人:马忠军。 (#424 )

  • Nominatim :更好地描述AddressDetails中返回的内容。作者:Mateusz Konieczny。 (#429 )

  • Nominatim :更好地描述 viewbox 参数行为。由汉尼斯贡献。 (#454 )

  • Yandex :解除挡路对需要api密钥的关注。

2.0.0

2020-06-27

geopy2.0是一个包含大量清理和内部重构的主要版本。库的公共接口基本相同,并且支持的地理编码器集没有改变。

如果您在最新的1.x版本中检查了代码并启用了警告(即 -Wd 钥匙 python 命令)并修复了所有这些问题,那么升级应该是安全的。

新特点

包装变更

正在中断更改

  • geopy.distance 算法现在提高了 ValueError 对于不同高度的点,因为 altitude is ignored in calculations .

  • 远离的 geopy.distance.vincenty 使用 geopy.distance.geodesic 相反。

  • timeout=None 现在禁用请求超时,以前在本例中使用了默认超时。

  • 远离的 GoogleV3.timezone 使用 GoogleV3.reverse_timezone() 相反。

  • 远离的 format_string 所有地理编码器的参数。看到了吗 Specifying Parameters Once 备选方案的文件部分。

  • exactly_one 的默认值是now True 所有的地理编码器和方法。

  • 已从所有 __init__ methods of geocoders. Pass them to the corresponding geocode/reverse 方法。

  • 所有边界框参数现在必须作为两点的列表传递。以前,一些地理编码人员接受一些独特的格式,比如纯字符串和4个坐标的列表——这些值不再有效。

  • GoogleV3.reverse_timezone() 用于允许数字 at_time 价值观。通过 datetime 而是实例。

  • reverse 方法在无法将查询解析为 Point . 现在是 ValueError 在这种情况下被提出。

  • LocationTimezone 类不再接受 pointraw 阿格斯。

  • Nominatim 现在提出 geopy.exc.ConfigurationError 与默认用户代理或示例用户代理一起使用时。

  • Point 现在提出一个 ValueError 如果从单个数字构造。必须显式传递零经度以避免错误。

  • 地理编码器的大多数特定于服务的参数现在必须作为kwargs传递,不接受位置参数。

  • 删除的默认值 None 的身份验证密钥参数 GeoNamesOpenMapQuestYandex .

  • parse_* geocoders中的方法的前缀为 _ 明确标记它们是私有的。

废弃

  • Nominatim 已从移动 geopy.geocoders.osm 模块到 geopy.geocoders.nominatim . 为了向后兼容,旧模块仍然存在,但它将在geopy 3中删除。