通过Python让NotionAPI新建页面
前言:
本文基于网上对于NotionAPI的教程,多为以数据库为例子,并没有从最基础的情况开始讲,我花了一个下午才测试成功,走了不少弯路,因此我想分享一下用NotionAPI在一个页面里新建一个page的方法,借此说明Notion的页面结构。
先上完整的代码
#encoding:utf-8 import requests Title = "此处为标题" Text = "此处为内容" token = "" url = "https://api.notion.com/v1/pages" data = { "parent":{ "type":"page_id", "page_id":"", }, "properties":{ "title":{ '"id": "title", "type": "title", "title": [{"type": "text", "text": {"content": str(Title)}}] }, }, "children":[ { "object":"block", "type":"paragraph", "paragraph":{ "rich_text":[{"type":"text","text":{"content":str(Text)}}] } }] } headers = { "Accept": "application/json", "Notion-Version": "2022-02-22", "Content-Type": "application/json", "Authorization": "Bearer "+token, } r = requests.request("POST", url, json=data, headers=headers) r.encoding = 'utf-8' print (r.text)
一些必要知识
1.token是创建NotionAPI机器人时自动发放的,复制即可
2.page_id在网页网址中可以获取,格式为8-4-4-4-12,一个数字代表一个字符
3.主体内容为data(可更改名称),其余的保留即可
数据结构
1.parent用于指定在何页面下添加数据,有page和database两种类型
2.properties可用于定义标题、icon和背景
3.children用于添加内容,但要在“块”里面添加,类型也有许多种,可以参考官方的文档,值得注意的是,添加文本不是用Text类型,而是要用paragraph才行。
附上官方文档
https://developers.notion.com/docs/working-with-page-content