我先简单总结一下吧:

  1. 通过Note的导出功能,导出wordpress格式(带附件)的压缩包
  2. 通过npx wordpress-export-to-markdown指令安装并调用脚本,指定xml文件和输出文件夹以外全部选‘否’。
  3. 导出的markdown文件的图片为绝对路径,需要替换为相对路径。(用脚本批量替换,就是加个点)
  4. 通过pandoc将markdown文件批量转换为docx文件(这样就能内嵌图片进去)
  5. 通过notion导入功能批量导入。

我去……这套方法太复杂了,能不能第三步开始就直接打通啊……

而且经过测试,这个方法对于部分docx,以及超过5M的docx是不能导入的(要开会员)

拿GPT写了一个脚本,以后试试……

@echo off
setlocal

:: 定义文件和文件夹路径
set EXPORT_FILE=E:/wordpress/output/export.xml
set ASSETS_FOLDER=E:/wordpress/output/assets
set OUTPUT_FOLDER=E:/wordpress/output/output
set DOCX_FOLDER=%OUTPUT_FOLDER%/docx

:: 运行 wordpress-export-to-markdown
echo Running wordpress-export-to-markdown...
echo n | npx wordpress-export-to-markdown --input=%EXPORT_FILE% --output=%OUTPUT_FOLDER% --metadata=false --save-attached-images=false

:: 拷贝 assets 文件夹
echo Copying assets folder...
xcopy /E /I %ASSETS_FOLDER% %OUTPUT_FOLDER%/assets

:: 修改 markdown 文件中的图片路径
echo Updating image paths in markdown files...
for /R %OUTPUT_FOLDER% %%G in (*.md) do (
    powershell -Command "(Get-Content '%%G') -replace '/assets/', './assets/' | Set-Content '%%G'"
)

:: 创建 docx 文件夹
echo Creating docx folder...
mkdir %DOCX_FOLDER%

:: 将 markdown 文件转换为 docx 文件
echo Converting markdown files to docx files...
for /R %OUTPUT_FOLDER% %%G in (*.md) do (
    pandoc "%%G" -o "%DOCX_FOLDER%/%%~nG.docx"
)

echo Done.
endlocal