我用迁移插件迁移了以前的文章

给过去画上一个句号

这篇文章比较长,建议打开目录看

起因

今天在看 Hexo 的文档的时候,发现了这个

なに?可以用 RSS 方式迁移?于是乎就有了这篇文章(笑)

事前准备

插件的项目为 https://github.com/hexojs/hexo-migrator-rss

安装插件

官方给出的安装方式为

npm install hexo-migrator-rss –save

众所周知,国内的网络环境对 npm 的源不是很友好,这里可以用 cnpm 来安装

cnpm install hexo-migrator-rss –save

cnpm 安装方式请参考 使用 rsync 来部署 Hexo 博客 | Leao’s Blog | Leao的博客

插件用法

Hexo 的文档给出的用法是

插件安装完成后,执行下列命令,从 RSS 迁移所有文章。source 可以是文件路径或网址。

$ hexo migrate rss <source>

这其实给的有些简陋了,实际上在这个插件的项目主页有更详细的介绍

不过是 嘤文 英文,用法翻译过来就是

hexo migrate rss <RSS来源> [–可选项]

RSS 来源可以是一个网络链接(前提是你的网络得能访问)或者一个本地的 RSS 文件

可选项主要有 aliaslimitskipduplicate 三个

  • alias 由于我没用过,故不做翻译。
  • limit 的用途是限制迁移的文章数量,默认为迁移全部文章。

例如要迁移三篇文章,用法是命令后加上 --limit 3

  • skipduplicate 的用途是去重。主要特点如下:
    • 例如现在有一个标题名为 Foo Bar 的要迁移的文章,而博客内现在存在一个名为 Foo-Bar.md 的文章,那么这篇文章就不会被迁移。
    • 不区分大小写。例如现在有一个标题名为 FOO BAR 的要迁移的文章,而博客内现在存在一个名为 foo-bar.md 的文章,那么这篇文章也不会被迁移。
    • 如果没有指定这一项,那么博客默认会继续迁移这篇文章,并在文件名后加上 -1 予以区分。

上手开整

Blogger

我首先是去迁移我在 Google Blogger 上的博客文章。
打开了我的 Blogger 博客 https://leao9203.blogspot.com/
Blogger 默认提供了 RSS 服务,在博客链接后加上 /atom.xml 就可以。
将这个文件下载下来。

然后在博客根目录执行

强烈建议把博客复制到另一个目录后进行迁移,以免导入的内容污染了博客原本的文章结构

hexo migrate rss ${atom.xml文件}

导入之后,就可以在 source/_post 目录看到导入的文章了
(我导入的文章是 2020 到 2021 写的)

知乎文章

导入知乎的文章也同理,只不过知乎的文章不是那么容易导入,需要用到另一个工具:RSSHub。
RSSHub 开发者搭建的网站:https://rsshub.app

根据 其文档 所写的,知乎文章的 RSS 获取方式为

1
https://rsshub.app/zhihu/posts/people/你的用户名

获取之后,对比着 Blogger 文章导入方式,比葫芦画瓢即可(
不过还是忍不住吐槽一句,知乎的文章导入之后年份全都是 1970,就很离谱(

Typecho(很久远了)

用 Typecho 搭建的博客可以说是很久远了,久远到上一次的备份还是前年(2020年)
但幸运的是,我留了一份博客的备份

于是乎,我就用虚拟机装了个 Debian,然后安装宝塔+LNMP 套装(跟正常搭建 Typecho 博客一样的操作)
在安装完毕之后,登陆宝塔面板,查看了博客的配置文件,也就是 config.inc.php ,然后新建一个数据库,名字和配置文件中的一致。

需要注意的是

user :新建数据库的用户名(宝塔默认是把用户名和数据库名整一样了)
password :数据库的密码
charset :数据库编码,常用的是 utf8 (万国码)和 utf8mb4
database :数据库名

新建数据库的配置这样就 OJBK 了(
密码一致!密码一致!密码一致!

然后导入数据库文件,访问 Typecho 博客绑定的网站

完美~
Typecho 的 RSS 方式是在博客网站后加上 /feed ,把 RSS 文件下载下来即可

然后比葫芦画瓢即可(

后记

这很简单,对8?

这篇文章本来是说随便写写的,但没想到越写越上头(
于是乎这篇文章就有了这么长(

而且我 Typecho 的博客能够恢复,是属于很幸运的了,因为我刚好有做备份
(我有一个习惯,每次有东西不用的时候,删除之前总会在别的地方进行一次备份以防止发生事故)
博客用的图床是我自己搭建的,刚好图片有备份,就很emmmm…
一切,都是那么的巧

预计以前的文章会在这篇文章发布后不久就能看到了