Life Contents/Workflow

옵시디언 세컨드브레인 만들기 (2) — Ticktick과 노션에서 자료 옮겨오기

도엔 2026. 9. 18. 13:30
728x90

 

 

 지난편[(1) 초기 세팅 (테마, 플러그인, 설정)] 에서 초기 세팅을 마치고 본격적인 자료 이관 작업에 들어갔다.

성격이 다른 두 앱, Ticktick과 노션에 흩어져 있던 기록들을 옮겨오는 과정이다.

 

Ticktick에서 옮겨오기

 일단 기존 Ticktick의 모든 내용을 그대로 옮겨왔다. 정리하거나 거르지 않고 통째로. 그 결과 2000개가 넘는 문서가 서로 아무 연결 없이 개별 노트로 뚝뚝 떨어진 상태가 됐다. (사실 태그를 켜뒀다면 어느 정도는 연결됐을 텐데, 당시엔 그 설정이 있다는 걸 몰랐음.)

 

 Ticktick에서 내보낸 CSV를 옵시디언 노트로 바꾸는 작업은 파이썬 스크립트를 짜서 처리했다. mdmove.py, csvconvert.py, list.py — 세 개로 나눠 변환과 이동을 각각 맡겼다. 

 이 과정에서 겪은 오류는: Ticktick 쪽 타임스탬프가 UTC로 저장돼 있었는데, 이걸 옵시디언 노트로 옮기면서 KST로 변환하는 걸 빠뜨리는 바람에 날짜가 하루씩 밀려 있었다. fix_dates.py라는 교정 스크립트를 따로 짜서 날짜를 다시 맞추고, 검증까지 마쳤다.

 

 폴더 구조는 Ticktick에서 쓰던 걸 그대로 가져왔다. Ticktick은 폴더 안에 폴더를 만들 수 없어서 그 아래 단계는 열(column)로 구분해뒀는데, 이 열 구조를 옵시디언에서는 하위 폴더 구조로 바꿔서 옮겼다. 이후 큰 덩어리 정도만 폴더에 적당히 분류하여 넣어두었다.

 

Notion에서 옮겨오기

 노션 쪽은 커뮤니티 플러그인인 Importer를 썼다.

Importer는 노션에서 내보낸 export 파일을 읽어서, 페이지 간 계층 구조는 폴더 구조로, 각 페이지는 옵시디언 노트로 변환해준다. 속성이 있는 페이지(노션 데이터베이스의 항목 같은)는 그 속성들이 옵시디언 노트의 frontmatter로 매핑되는 방식이라, 처음부터 손으로 옮기는 것보다는 구조를 상당 부분 그대로 가져올 수 있었다.

 

다음 편에서는 이렇게 옮겨온 기록들을 정리하려고 AI를 붙여본 이야기 — Claude, Gemini와 옵시디언을 연동해보고, 커뮤니티 플러그인으로도 시도했다가 실패한 것들 — 을 정리한다. → [옵시디언 세컨드브레인 만들기 (3) AI 연동 첫 삽질기]


728x90
반응형