Notice: since the official product is introducing a similar feature, I decide to suspend this project untill its release.
Cubox to Notion [ Engligh | 中文 ]
A slight tool for Notion users to integrate Cubox service.
Motivation: In most cases (including WeChat/web clipping), Cubox is a decent solution to collect something, however, Notion is more capable for managing and utilizing them.
Next Update: planned before Jan, 23.
- Full-text suport (experimental, dute to API limis, some article will be fallback to description)
- Improved speed by locah chache control
- Issue fixed: No.5
- Action needed after updating:
pip install -r requirements.txt
to update requirements
-
TOTALLY FREE
-
Cubox contents -> Notion, currently supporting
- Basic information, including title, descriptionc, link, tags
- Cubox properties, including link, full-text, created time (planned)
-
Consecutive, incremental synchronization
-
Duplication detection & control
-
Automatic deletion & control
-
Improved speed
-
Multiple folders (implemented, not tested though)
-
Select folder by name (planned)
(1) Prepare a Notion database with following necessary columns:
- Name,
title
- URL,
link
- Cubox,
link
- Tags,
multiple selection
- Type,
selection
, a default item 'Cubox' required
(2) copy your Notion database id, to config.ini
(template found at config.template.ini
)
(3) create a Notion Bot, get a key, and copy to config.ini
(4) invite your bot to your database, make sure it has write permission
(1) log in, for sure, and copy your token
stored in your cookies to config.ini
(remember to qute them with "
since Cubox token has a =
in its string)
(2) copy your collection id to config.ini
- If you would like to keep your Notion database updated consecutively, use loop sync:
python main.py
- If you would like to excute an one-time sync, use:
scrapy crawl cubox_to_notion -L ERROR
# where log-level can be customized by replacingERROR
toINFO
,CRITICAL
, etc.
MORE EXPLANATION INCOMING
- An Notion API token, make sure your extension is invited to your datdabase
- A server or a local computer with Python 3.6+ installed
- Notion Pro Plan ( = free 🤩)
- Cubox Pro Plan ( = free 🤩)
In a word, we utilized the potential of Scrapy.
- Scrapy, to fetch and parse Cubox contents
- Requests, interaction between two products
- API
- Notion, official, directly and rapidly interacted in HTTP
- Cubox, unofficial, since the official one is not sufficient to accomplish our task : )
- Third-party module:
- Notionfier, for Markdown full-text support
- See: architecture
- Click 🌟
- Donation through afdian
Permission is hereby granted in MIT LICENSE