typecho文章导出到文件

为了便于信息的集中管理,把以前在typecho写的一些文章导出到文件。写了一个python脚本,代码如下:


# -*- coding: utf-8 -*- 
# /usr/bin/python3

import pymysql

def dumptofile():
    connect = pymysql.Connect(
        host="localhost",
        port=3370,
        user="root",
        passwd="root",
        db="typecho",
        charset='utf8'
    )
    print("写入中,请等待……")
    cursor = connect.cursor()
    sql = "select title, text  from typecho_contents"
    cursor.execute(sql)
    res = cursor.fetchall()
    count = 0
    for post in res:
        title=post[0]
        text = post[1]
        text = "---\ntitle: {title}\ndate: 2018/10/01\n---\n\n".format(title=title) + text[15:]
        # print(title,text)
        filename = '{title}.md'.format(title=title)
        fp = open(filename,"w",encoding="utf-8")
        fp.write(text)
        fp.close()
        count += 1
    cursor.close()
    connect.close()
    print("写入完成,共写入%d条数据……" % count)

if __name__ == "__main__":
    dumptofile()

期间遇到的问题:

str类型不能直接修改,只能创建副本后修改。
需要在打开文件时指定编码,猜测从数据库读出的内容是utf-8编码,故写入文件之前不需要转换。