datasette-enrichments-opencage 由 datasette 开发

星标

README 源代码

datasette-enrichments-opencage

PyPI Changelog Tests License

使用 OpenCage 进行地理编码增强

安装

在与 Datasette 相同的环境中安装此插件。

datasette install datasette-enrichments-opencage

使用方法

此插件添加了一个使用 OpenCage Geocoder 进行地理编码的增强功能。

您需要一个 OpenCage 的 API 密钥 - 您可以在 https://opencagedata.com/users/sign_up 免费试用注册。

筛选您希望进行地理编码的数据,然后应用 OpenCage 地理编码器增强功能。

您需要指定一个将传递给地理编码器的模板,指明哪些模板应被用作输入。

如果您有一个包含地址的单列,可以使用此模板

{{ address }}

如果您有街道、城市、州和国家/地区的单独列,可以使用此模板

{{ street }}, {{ city }}, {{ state }}, {{ country }}

如果您的地址列缺少国家/地区,但所有地址都在美国,您可以使用此模板

{{ address }}, USA

请参阅 OpenCage 指南,了解如何获得最佳结果的技巧。

默认情况下,只会存储地理编码器返回的纬度(latitude)和经度(longitude)数据,存储在您表的相应列中。如果这些列不存在,将自动创建。

您可以选择指定一个列来存储地理编码器的完整 JSON 输出。如果此列不存在,也将自动创建。

完整的 JSON 格式在此处描述

配置

您无需配置即可使用此插件,但每次运行增强功能时都需要输入您的 API 密钥。

为避免这种情况,您可以将 API 密钥设置为插件配置,如下所示

export OPENCAGE_API_KEY="your-api-key"

然后在 metadata.yml 文件中

plugins:
  datasette-enrichments-opencage:
    api_key:
      $env: OPENCAGE_API_KEY

然后像这样运行 Datasette

datasette mydatabase.db -m metadata.yml --root

这将为您提供一个 URL,用于以“root”用户身份登录,该身份授予您访问增强功能的权限。

开发

要在本地设置此插件,首先克隆代码。然后创建一个新的虚拟环境

cd datasette-enrichments-opencage
python3 -m venv venv
source venv/bin/activate

现在安装依赖项和测试依赖项

pip install -e '.[test]'

要运行测试

pytest