这篇文章上次修改于 4 个月前,可能其部分内容已经发生变化,如有疑问可询问作者。
最近想从hexo转移到typecho,但是typecho是没有一键导入md文章,手动导入又很烦,怎么办呢。于是我就想用 Python 来写一个自动解析md导入typecho的脚本。
于是就开始编码了,首先是用正则表达式提取,hexo的md头部是YAML格式的,只要解析
title
date
tags
categories
就行了,这里就是tags和category难解析,他们可能不止一个标签。但也可能没有标签。对于上面的解析,我采用两个判断,以及捕获异常的方式解析,tags和category的方式有一些不同。实现如下:
这里的踩坑点主要是正则中的
\s
他不仅匹配一个空格,也可以是换行符等等,所以我采用了 [ ]*
匹配多个空格。如果匹配不到呢,则时会抛出异常 AttributeError
然后捕获异常,让 tags(category) = ‘’
就行了。然后是插表方面,连接之后,批量解析文件,将字段插入表中,这里需要插入三个表,分别是
typecho_metas
typecho_contents
typecho_relationships
从
typecho_contents
中插入文章内容,从 typecho_metas
中插入分类和标签,从 typecho_relationships
中建立文章和分类和标签的关系。这里需要为
typecho_metas
表中的 name
tpye
建立联合主键,避免重复插入。在重复插入时进行更新操作,使得 count = count + 1
。全部源码见:
https://github.com/Innei/move-hexo-to-typecho
https://github.com/Innei/move-hexo-to-typecho
欢迎交流
文章标题:
文章作者:
文章链接: [复制]
最后修改时间:
商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接,未经站长允许不得对文章文字内容进行修改演绎。
本文采用创作共用保留署名-非商业-禁止演绎4.0国际许可证
亲亲留个评论再走呗
正在加载评论区...