NotionデータベースにPythonを使ってデータを書き込む

NotionデータベースにPythonを使ってデータを書き込む話を書きます。

前提

  • NotionにMy Integrationにインテグレーションの登録が必要です。
  • 登録先のNotionデータベースは手作業で作成が必要です。
  • My Integrationに登録したインテグレーションを作成したNotionデータベースにコネクトする必要があります。これも手作業です。

上記が全て終わっている前提で進めます。

サンプルコード

notion-clientとpython-decoupleを使っています。 以下がサンプルです。

from notion_client import Client
from decouple import config

notion = Client(auth=config("NOTION_API_KEY"))
database_id = config("NOTION_DATABASE_ID")


kargs = {
    "parent": {"database_id": database_id},
    "properties": {
        "タイトル": {"title": [{"text": {"content": "テストタイトル"}}]},
        "ID": {"rich_text": [{"text": {"content": "hogehoge"}}]},
    },
}

kargs["children"] = [
    {
        "object": "block",
        "type": "paragraph",
        "paragraph": {
            "rich_text": [{"type": "text", "text": {"content": "テストメッセージ"}}]
        },
    },
]


response = notion.pages.create(**kargs)