导入笔记
概述
Obsidian 支持从多种笔记工具导入数据。由于 Obsidian 使用纯 Markdown 格式存储,迁移过程相对简单。
导入方式
支持的导入来源
| 来源 | 难度 | 说明 |
|---|---|---|
| Markdown 文件 | ⭐ | 直接打开文件夹即可 |
| Notion | ⭐⭐ | 使用转换工具导出 |
| Roam Research | ⭐⭐ | 导出为 Markdown |
| 印象笔记 | ⭐⭐⭐ | 需要第三方工具 |
| OneNote | ⭐⭐⭐ | 需要第三方工具 |
| Apple Notes | ⭐⭐⭐ | 需要第三方工具 |
| 有道云笔记 | ⭐⭐⭐ | 需要第三方工具 |
从 Markdown 导入
如果你的笔记已经是 Markdown 格式:
- 打开 Obsidian
- 选择「打开文件夹作为仓库」
- 选择包含 Markdown 文件的文件夹
- 完成导入
这是最简单的方式,无需任何转换。
从 Notion 导入
方法一:官方导出
在 Notion 中导出工作区
- Settings → Export
- 选择「Markdown & CSV」格式
- 勾选「Include subpages」
- 点击「Export」
解压导出文件
在 Obsidian 中打开文件夹
方法二:使用转换工具
推荐使用 Notion-to-Obsidian 工具:
bash
# 安装工具
pip install notion-to-obsidian
# 转换 Notion 导出文件
notion-to-obsidian /path/to/notion-export /path/to/output转换注意事项
Notion 导出的 Markdown 可能需要调整:
| Notion 特性 | Obsidian 对应 |
|---|---|
/callout | > [!note] 语法 |
| 数据库 | 需手动转换为 Markdown 表格 |
| 内部链接 | 需转换为 [[链接]] 格式 |
| 标签 | 需转换为 #标签 格式 |
从 Roam Research 导入
导出步骤
- 登录 Roam Research
- 点击右上角「...」→ Export
- 选择「Markdown」格式
- 下载导出文件
转换工具
使用 roam-to-obsidian 转换:
bash
# 安装
pip install roam-to-obsidian
# 转换
roam-to-obsidian /path/to/roam-export /path/to/output格式转换
Roam Research 格式需要调整:
markdown
# Roam 格式
- [[链接文本]]
- #标签
# Obsidian 格式
- [[链接文本]]
- #标签两者语法相似,大部分内容可直接使用。
从印象笔记导入
方法一:使用 Joplin 中转
- 下载 Joplin
- 在 Joplin 中导入印象笔记
- File → Import → ENEX
- 从 Joplin 导出为 Markdown
- File → Export → MD (Markdown)
方法二:使用专用工具
使用 Yarle 工具:
bash
# 安装
npm install -g yarle-evernote-to-md
# 转换
yarle --configFile config.json配置文件示例:
json
{
"enexSource": "/path/to/export.enex",
"outputDir": "/path/to/output",
"skipWebClips": true,
"useHashTags": true
}从 OneNote 导入
使用 OneNoteMdExporter
- 下载 OneNoteMdExporter
- 运行工具选择要导出的笔记本
- 选择导出格式为 Markdown
- 在 Obsidian 中打开导出文件夹
注意事项
OneNote 转换可能存在问题:
- 手写内容无法转换
- 图片可能丢失
- 表格格式可能变形
- 需要手动检查和修复
从 Apple Notes 导入
使用 Notes-exporter
- 在 macOS 上导出笔记
- 使用 apple-notes-to-markdown 转换
bash
# 安装
pip install apple-notes-to-markdown
# 转换
apple-notes-to-markdown --input ~/Library/Group\ Containers/group.com.apple.notes/ --output ./output从有道云笔记导入
导出步骤
- 使用有道云笔记客户端导出
- 选择导出格式为 Markdown
- 批量导出所有笔记
转换工具
可以使用 youdao-to-md 工具:
bash
python youdao_to_md.py /path/to/youdao-export通用导入流程
步骤一:整理导出数据
yaml
整理建议:
- 删除不需要的文件
- 统一文件编码为 UTF-8
- 检查文件名格式
- 处理特殊字符步骤二:转换格式
yaml
转换要点:
- 内部链接: 转为 [[链接]] 格式
- 标签: 转为 #标签 格式
- 图片: 更新引用路径
- 代码块: 检查语法高亮标记步骤三:在 Obsidian 中打开
- 创建新仓库或使用现有仓库
- 将转换后的文件复制到仓库目录
- 重新打开仓库刷新索引
步骤四:修复链接
使用插件修复内部链接:
- Obsidian URL Converter:转换外部链接
- Find and Replace:批量替换文本
- templater:自动化修复流程
批量处理技巧
使用正则表达式替换
常见替换模式:
# 将 [[wikilink]] 格式统一
搜索: \[\[(.+?)\]\]
替换: [[$1]]
# 修复图片路径
搜索: !\[\](images/(.+?))
替换: ![[images/$1]]使用脚本批量处理
python
import os
import re
def convert_links(directory):
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith('.md'):
filepath = os.path.join(root, file)
with open(filepath, 'r', encoding='utf-8') as f:
content = f.read()
# 转换链接格式
content = re.sub(r'\[\[(.+?)\]\]', r'[[$1]]', content)
with open(filepath, 'w', encoding='utf-8') as f:
f.write(content)
convert_links('/path/to/notes')导入后优化
检查清单
yaml
导入后检查:
- [ ] 内部链接是否正常跳转
- [ ] 图片是否正确显示
- [ ] 标签是否识别
- [ ] 代码块是否正常高亮
- [ ] 表格格式是否正确优化建议
- 使用标签面板检查所有标签
- 使用图谱视图检查链接关系
- 使用反向链接面板发现孤立笔记
- 添加模板统一笔记格式
推荐插件
| 插件 | 功能 |
|---|---|
| Import from Notion | 直接导入 Notion 页面 |
| Readwise | 导入 Readwise 高亮 |
| Zotero Integration | 导入文献笔记 |
| Omnivore | 导入网页剪藏 |
常见问题
中文文件名乱码?
确保文件编码为 UTF-8:
bash
# Linux/macOS
iconv -f GBK -t UTF-8 input.md > output.md
# 或使用编辑器另存为 UTF-8图片无法显示?
检查图片路径:
- 确保图片文件存在
- 使用相对路径
- 检查文件名大小写
链接跳转失败?
检查链接格式:
markdown
# 正确格式
[[笔记名称]]
[[笔记名称#标题]]
[[笔记名称|显示文本]]
# 错误格式
[[ 笔记名称 ]]
[笔记名称]