Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reycn/cubox-to-notion
A slight but fast synchronization tool for Notions users to utilize Cubox.
https://github.com/reycn/cubox-to-notion
cubox notion python scrapy
Last synced: 18 days ago
JSON representation
A slight but fast synchronization tool for Notions users to utilize Cubox.
- Host: GitHub
- URL: https://github.com/reycn/cubox-to-notion
- Owner: reycn
- License: mit
- Created: 2022-08-22T17:49:06.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-23T07:40:38.000Z (about 2 years ago)
- Last Synced: 2024-12-01T08:57:11.558Z (23 days ago)
- Topics: cubox, notion, python, scrapy
- Language: Python
- Homepage:
- Size: 4.88 MB
- Stars: 102
- Watchers: 4
- Forks: 10
- Open Issues: 5
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
README
**Notice: since the official product is introducing [a similar feature](https://mp.weixin.qq.com/s/nNRKjWixPl2AqlWd_qeDYQ), I decide to suspend this project untill its release.**# Cubox to Notion [ Engligh | [ä¸æ–‡](./README.ZH.MD) ]
![version](https://img.shields.io/badge/version-alpha-red)
![GitHub top language](https://img.shields.io/github/languages/top/reycn/cubox-to-notion) [![codebeat badge](https://codebeat.co/badges/ffea9c86-2b10-45b9-b4cc-d7cb35bbde4d)](https://codebeat.co/projects/github-com-reycn-cubox-to-notion-main) ![License](https://img.shields.io/badge/license-MIT-000000.svg)
A slight tool for [Notion](https://www.notion.so/) users to integrate [Cubox](https://cubox.pro/) 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.
# What's New in Oct.✨
- **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](https://github.com/reycn/cubox-to-notion/issues/5])
- Action needed after updating:
`pip install -r requirements.txt` to update requirements# Features
- **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)# At a glance
# How to start
## 1. Prepare a Notion database and a bot
(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## 2. Get your Cubox token and locate your group to sync
(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`## 3. Start to run
- 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 replacing `ERROR` to `INFO`, `CRITICAL`, etc.
_MORE EXPLANATION INCOMING_## Required & not required
### Required
- An Notion API token, make sure your extension is invited to your datdabase
- A server or a local computer with Python 3.6+ installed### Not Required
- Notion Pro Plan ( = free 🤩)
- **Cubox Pro Plan** ( = free 🤩)## Technical Details
In a word, we utilized the potential of Scrapy.
- [Scrapy](https://github.com/scrapy/scrapy), to fetch and parse Cubox contents
- [Requests](https://github.com/psf/requests), interaction between two products
- API
- [Notion, official](https://developers.notion.com/), directly and rapidly interacted in HTTP
- [ Cubox, unofficial](https://github.com/reycn/cubox-to-notion), since the official one is not sufficient to accomplish our task : )
- Third-party module:
- [Notionfier](https://github.com/Arsenal591/notionfier), for Markdown full-text support
- See: [architecture](https://app.tryeraser.com/workspace/xYpHHokfhmbpjrVowqsb?origin=share)
## Support the Author
- Click 🌟
- Donation through [afdian](https://afdian.net/@reynd/plan)## LICENSE
Permission is hereby granted in [MIT LICENSE](LICENSE)