🚀 【從複製貼上解雙手】如何用 Python 自動把 Notion 文章貼到方格子(附工具方案)

更新 發佈閱讀 13 分鐘
raw-image


你是不是跟我一樣:文章都寫在 Notion,結果每次要貼到方格子還要手動複製貼上、重新排版、上傳圖片……每次都貼到懷疑人生?

好消息來了!我們可以用 Python 一鍵把 Notion 文章自動貼到方格子草稿區,還能保留格式,貼完直接編輯、發佈,不再重複勞動, 讓我們專注在撰寫精選文章上, 發文的部分就交給機器人吧!

🎁 文末我還放了一份專屬的「🎁 開發工具包」讓你加速起跑, 請耐心閱讀完我們的文章並給予鼓勵 👏👏👏,謝謝。

🎯 本篇教你做什麼?

這邊不會教您如何實作, 僅提供流程圖, 也不會貼上程式碼, 因為我們不希望您只會複製貼上, 而是能夠照著我們的流程思路走過一遍並開發, 如此一來學到的才會是自己的!

• 透過 Notion API 取得文章內容。

• 把內容轉成 HTML 格式。

• 用 Playwright 自動登入方格子並建立草稿的流程(不是程式碼內容哦)。

• 自動貼上內容到文章編輯器。

適合:有寫作習慣+會一點點 Python 的你 ✨

如果您看完流程還是不會做, 但又很急需要這個工具, 阿Han也幫你排除萬難了, 幫你把工具包放在「🎁 開發工具包」, 只要省下一個便當錢就能夠給你高效率發文工具, 歡迎支持, 感謝與感恩。

🏗️ 技術架構

raw-image


🌟 整體流程概覽

raw-image


🧰 前置準備

1、建立 Notion 整合(Integration)

• 前往 https://www.notion.so/my-integrations

• 建立一個新 integration,取名為 VocusPoster

• 拿到 integration token,例如:secret_abc123456

• 設定權限, 在Access頁籤裡面設定哪些頁面要給intergration機器人存取。

raw-image


安裝必要套件


# 處理notion相關操作
notion-client==2.4.0

# 模擬貼文操作
playwright==1.53.0

# 讀取環境變數配置
python-dotenv==1.1.1

# 下載圖片
requests==2.32.4

# 複製與貼上圖片
pyperclip==1.8.2

# 圖片處理
Pillow==11.3.0
pywin32==310

🧱 專案重要程式碼說明

notion-to-vocus/
├── notion_fetcher.py # 取得並轉換 Notion block 為 HTML
├── vocus_uploader.py # 自動登入並貼上草稿
├── run.py # 主程式:串連 Notion + Vocus
├── .env # 存放敏感資料(token、帳號)
└── requirements.txt # 所有依賴套件

🧠 notion_fetcher.py

主要透過notion api 取得頁面內容, 並進行html的轉換。

1-1 Notion內容擷取 - 初始化階段

raw-image


1-2 Notion內容擷取 - 區塊處理階段

raw-image


✍️ vocus_uploader.py

這個模組主要負責方格子的登入、內容上傳、圖片處理、程式碼區塊, 這邊技術困難度最高的部分就是圖片及程式碼區塊的處理, 因為圖片牽涉到外部連接與權限, 因此需要下載之後再透過暫存剪貼簿複製貼上, 而方格子的編輯器本身存在一些問題, 程式碼區塊常常會在最後一段就很難往下編輯, 因此需要一些黑科技, 這也是阿Han花費非常多心思的核心邏輯, 也希望有此需求的朋友們能夠支持一下。

1-1 方格子登入流程

這邊的重點技術在於Cookie的保存, 避免每次執行都要再進行登入流程, 另外登入的方式除了傳統的方格子帳號登入之外, 也支援第三方Google登入。

raw-image


1-2 方格子內容上傳流程

raw-image


1-3 方格子圖片處理流程

raw-image


🚀 run.py(主程式)

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Notion 到方格子自動化工具
主程式:整合 Notion 內容擷取和方格子自動上傳
"""

from notion_fetcher import fetch_notion_page_html, get_page_title
from vocus_uploader import paste_to_vocus, test_vocus_login
import os
from dotenv import load_dotenv
import argparse

def main():
"""
主程式入口
"""
load_dotenv()

# 解析命令列參數
parser = argparse.ArgumentParser(description='Notion 到方格子自動化工具')
parser.add_argument('--test-login', action='store_true', help='測試方格子登入')
parser.add_argument('--page-id', type=str, help='指定 Notion 頁面 ID')
parser.add_argument('--google-login', action='store_true', help='使用 Google 登入')
args = parser.parse_args()

# 檢查環境變數
notion_token = os.getenv("NOTION_TOKEN")
notion_page_id = args.page_id or os.getenv("NOTION_PAGE_ID")
vocus_email = os.getenv("VOCUS_EMAIL")
print(vocus_email)
vocus_password = os.getenv("VOCUS_PASSWORD")

if not all([notion_token, notion_page_id, vocus_email, vocus_password]):
print("❌ 缺少必要的環境變數!")
print("請確認 .env 檔案包含以下設定:")
print("- NOTION_TOKEN")
print("- NOTION_PAGE_ID")
print("- VOCUS_EMAIL")
print("- VOCUS_PASSWORD")
return

# 測試登入功能
if args.test_login:
print("🧪 開始測試方格子登入...")
if args.google_login:
print("🔐 使用 Google 登入模式")
test_vocus_login(vocus_email, vocus_password, use_google_login=args.google_login)
return

# 主要流程
print("🚀 開始 Notion 到方格子自動化流程...")
print(f"📄 目標頁面 ID: {notion_page_id}")

if args.google_login:
print("🔐 使用 Google 登入模式")

# 1. 從 Notion 取得內容
print("\n📖 正在從 Notion 取得內容...")
html_content = fetch_notion_page_html(notion_page_id)

if not html_content:
print("❌ 無法取得 Notion 內容,請檢查頁面 ID 和權限設定")
return

# 取得頁面標題
page_title = get_page_title(notion_page_id)
print(f"📝 文章標題: {page_title}")

# 顯示內容預覽
preview = html_content[:200] + "..." if len(html_content) > 200 else html_content
print(f"📄 內容預覽: {preview}")

# 2. 自動上傳到方格子
print("\n📤 正在上傳到方格子...")
paste_to_vocus(
email=vocus_email,
password=vocus_password,
content=html_content,
title=page_title,
use_google_login=args.google_login
)

print("\n🎉 自動化流程完成!")
print("💡 請檢查方格子中的草稿並手動發佈")

if __name__ == "__main__":
main()

🎉 工具的使用教學

1、下載專案

2、準備環境

python setup_venv.py

3、設定配置

複製 config.example.env 為 .env 並填入相關配置, 裡面都有詳細說明, 如果不會使用歡迎留言告訴我, 我非常樂意為您解答。

# Notion API 設定
# 前往 https://www.notion.so/my-integrations 建立整合
NOTION_TOKEN=secret_xxx

# Notion 頁面 ID(從頁面 URL 取得)
# 例如:https://www.notion.so/My-Page-1234567890abcdef
# 頁面 ID 就是 1234567890abcdef
NOTION_PAGE_ID=xxxxxxxxxxxxxxxxxxxxxx

# 方格子登入資訊
# 如果使用 Google 登入,請填入你的 Google 帳號和密碼
# 如果使用方格子帳號,請填入方格子帳號和密碼
VOCUS_EMAIL=your@email.com
VOCUS_PASSWORD=yourpassword

4、 登入並產生緩存Cookie

python run.py --test-login --google-login

5、 執行程式

python run.py --google-login
  1. Playwright 會開啟瀏覽器、自動登入。
  2. 建立一篇草稿。
  3. 把 Notion 內容自動貼上。
  4. ✅ 完成!你可以自行修改內容或發佈文章。


💡 過程我們遇到的坑

• 每次登入都要二階段驗證?

• 按不到某些按鈕?

• 無法貼上圖片?

• 程式碼區塊無法順利貼上?


相信您在實作程式碼的過程中多多少少會遇到我們以上踩過的坑, 沒關係, 這些問題我們都幫您解決了, 如果您需要, 歡迎下載我們的「🎁 開發工具包」, 小額購買, 讓您專注在事務的價值處理上。

🧸 結語:讓創作回到單純

寫作是件開心的事,不應該被複製貼上這種重複性工作消磨熱情。這套 Notion → 方格子自動貼文流程,希望能幫你節省時間、提高創作效率。如果你覺得有幫助,歡迎分享、轉發、拍手👏

最後也謝謝您的閱讀, 本章節的工具詳細內容盡在「🎁 開發工具包」歡迎自行下載使用。

如果你想讓這流程支援圖文排版、封面設定、自動發佈,我也可以幫你做進一步升級, 甚預有BUG也請回報給我,我會持續進行修正, 給您最好的服務體驗的❤️。

留言
avatar-img
阿Han的沙龍
150會員
324內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
阿Han的沙龍的其他內容
2025/02/26
cursor這個編輯器已經是軟體開發過程中必備的工具了, 有了AI的幫忙,讓我們的開發效率迅速提升, 但在Linux系統的安裝會稍微複雜一些, 因此我們就將我們安裝的過程進行整理與分享, 期望能幫上需要的朋友 😊。 下載安裝包 首先我們到官網 https://cursor.so 主畫面就會
Thumbnail
2025/02/26
cursor這個編輯器已經是軟體開發過程中必備的工具了, 有了AI的幫忙,讓我們的開發效率迅速提升, 但在Linux系統的安裝會稍微複雜一些, 因此我們就將我們安裝的過程進行整理與分享, 期望能幫上需要的朋友 😊。 下載安裝包 首先我們到官網 https://cursor.so 主畫面就會
Thumbnail
2023/08/03
Tmux對於常常在使用Linux或者Mac作業系統的朋友來說是一個非常方便的工具, 可以讓我們工作效率提升, 快速切換多個終端畫面進行多工處理, 但使用時難免遇到一些狀況跟需求, 而這次分享的主要是如何複製貼上, 相信這也是大部分使用者會遇到的情境, 因此進行經驗的分享與交流。 輸入指令的快捷
Thumbnail
2023/08/03
Tmux對於常常在使用Linux或者Mac作業系統的朋友來說是一個非常方便的工具, 可以讓我們工作效率提升, 快速切換多個終端畫面進行多工處理, 但使用時難免遇到一些狀況跟需求, 而這次分享的主要是如何複製貼上, 相信這也是大部分使用者會遇到的情境, 因此進行經驗的分享與交流。 輸入指令的快捷
Thumbnail
2023/07/29
熟悉使用Linux系列的開發者最常接觸的就是Terminal終端機了, 而Terminal終端機要如何有效率的運用? 這裡就來推薦一個神兵利器「tmux」, 他可以開啟我們的多工模式, 快速的游移在各個視窗之中敲打程式指令,加快工作效率。 並且背後運行著Server, 當我們進行大型任務的程式執行
Thumbnail
2023/07/29
熟悉使用Linux系列的開發者最常接觸的就是Terminal終端機了, 而Terminal終端機要如何有效率的運用? 這裡就來推薦一個神兵利器「tmux」, 他可以開啟我們的多工模式, 快速的游移在各個視窗之中敲打程式指令,加快工作效率。 並且背後運行著Server, 當我們進行大型任務的程式執行
Thumbnail
看更多
你可能也想看
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
Notion 是一款集合筆記、任務管理、知識庫和數據庫於一身的多功能工具。它提供靈活的頁面結構和多種模板,讓用戶根據需求自定義工作空間。不論是個人還是團隊,都能用 Notion 提高工作效率和管理信息。
Thumbnail
Notion 是一款集合筆記、任務管理、知識庫和數據庫於一身的多功能工具。它提供靈活的頁面結構和多種模板,讓用戶根據需求自定義工作空間。不論是個人還是團隊,都能用 Notion 提高工作效率和管理信息。
Thumbnail
這篇涵蓋了 Notion 建立網站的基礎,還有免費的教學資源,讓你不用寫程式,就能用 Notion 快速建立個人網站! Notion 簡易入口網站適合學生、求職、接案、小店家使用,能快速產出一個網站,節省成本又快速方便。
Thumbnail
這篇涵蓋了 Notion 建立網站的基礎,還有免費的教學資源,讓你不用寫程式,就能用 Notion 快速建立個人網站! Notion 簡易入口網站適合學生、求職、接案、小店家使用,能快速產出一個網站,節省成本又快速方便。
Thumbnail
要做會議記錄或課程筆記,想做逐字稿卻苦於打字速度不夠快嗎?錄音再慢慢回放浪費時間又容易恍神?這篇文章包你滿意,不用再浪費時間爬文了,你需要的逐字稿神器在這裡,保母級教學!
Thumbnail
要做會議記錄或課程筆記,想做逐字稿卻苦於打字速度不夠快嗎?錄音再慢慢回放浪費時間又容易恍神?這篇文章包你滿意,不用再浪費時間爬文了,你需要的逐字稿神器在這裡,保母級教學!
Thumbnail
我發現很多人在使用 Notion 的一個煩惱跟痛點是因為自由度太高, 所以很容易找不到建立的頁面隨著新增功能側邊欄越來越長 其實 Notion 根本可以不用手動整理他呀! 你只需要在每個頁面新增一個快速跨頁面自動目錄
Thumbnail
我發現很多人在使用 Notion 的一個煩惱跟痛點是因為自由度太高, 所以很容易找不到建立的頁面隨著新增功能側邊欄越來越長 其實 Notion 根本可以不用手動整理他呀! 你只需要在每個頁面新增一個快速跨頁面自動目錄
Thumbnail
之前分享過 Notion 卡片盒筆記缺乏圖像化流程圖的視覺呈現,雖然我個人較少用到,但是還是收到一些希望能有圖像化顯示的訊息。最近發現一個 Figma 外掛,可以將便利貼牆匯入 Notion 資料庫,或許也能補足圖像化製作流程圖等方面的需求!
Thumbnail
之前分享過 Notion 卡片盒筆記缺乏圖像化流程圖的視覺呈現,雖然我個人較少用到,但是還是收到一些希望能有圖像化顯示的訊息。最近發現一個 Figma 外掛,可以將便利貼牆匯入 Notion 資料庫,或許也能補足圖像化製作流程圖等方面的需求!
Thumbnail
近日有些夥伴在詢問我要如何使用 Notion 的多工畫面以及分享頁面的相關設置等等,因此今天就來導覽一下 Notion 介面以及我認為有哪些必做的設定調整,當然免不了還有滿滿的快捷鍵教學,請大家一定要看到最後,才不會錯過!
Thumbnail
近日有些夥伴在詢問我要如何使用 Notion 的多工畫面以及分享頁面的相關設置等等,因此今天就來導覽一下 Notion 介面以及我認為有哪些必做的設定調整,當然免不了還有滿滿的快捷鍵教學,請大家一定要看到最後,才不會錯過!
Thumbnail
在前一篇「教你如何用ChatGPT來製作Notion Quotes」中,我們學到了如何運用ChatGPT創建個人語錄庫,以豐富Notion數位空間。今天,我們與大家分享已完成的Notion Quotes模板,可供免費下載,輕鬆建立屬於自己的個人語錄庫,為Notion空間增添更多層次與深度。
Thumbnail
在前一篇「教你如何用ChatGPT來製作Notion Quotes」中,我們學到了如何運用ChatGPT創建個人語錄庫,以豐富Notion數位空間。今天,我們與大家分享已完成的Notion Quotes模板,可供免費下載,輕鬆建立屬於自己的個人語錄庫,為Notion空間增添更多層次與深度。
Thumbnail
Notion 是一個高度自由的筆記式平台,讓你可以根據自己的需求定製各種功能。在今天的教學中,我將向你介紹如何透過 WidgetStore 將 Notion 帶入一個全新的層次,並推薦三種在其他外掛中需要付費版才能使用的功能,以便你在學習和工作中發揮更大的效益。讓我們看下去!
Thumbnail
Notion 是一個高度自由的筆記式平台,讓你可以根據自己的需求定製各種功能。在今天的教學中,我將向你介紹如何透過 WidgetStore 將 Notion 帶入一個全新的層次,並推薦三種在其他外掛中需要付費版才能使用的功能,以便你在學習和工作中發揮更大的效益。讓我們看下去!
Thumbnail
Notion 是一個功能強大的 all-in-one 工具,讓我們能更有效地整理及安排事務。在設計頁面時,繼先前分享過的 Indify、Apption、WidgetBox、Kiaro,以及 Shorouk's Blog,本篇要來推薦另一個美化 Notion 的外掛工具 — Notionplus。
Thumbnail
Notion 是一個功能強大的 all-in-one 工具,讓我們能更有效地整理及安排事務。在設計頁面時,繼先前分享過的 Indify、Apption、WidgetBox、Kiaro,以及 Shorouk's Blog,本篇要來推薦另一個美化 Notion 的外掛工具 — Notionplus。
Thumbnail
現今數位世代,資訊匯流如潮水般湧入,如何有效地整理、保存網頁上有用內容成為許多人的挑戰。如果你像我喜歡使用 Notion 來管理你的工作和生活,那麼 Notion Web Clipper 將會是你無法或缺的強大工具。它能夠將任何網頁內容輕鬆儲存至 Notion,讓你能更便捷地閱讀、註記、保存和分享。
Thumbnail
現今數位世代,資訊匯流如潮水般湧入,如何有效地整理、保存網頁上有用內容成為許多人的挑戰。如果你像我喜歡使用 Notion 來管理你的工作和生活,那麼 Notion Web Clipper 將會是你無法或缺的強大工具。它能夠將任何網頁內容輕鬆儲存至 Notion,讓你能更便捷地閱讀、註記、保存和分享。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News