python读取wp sqlite转为rst
Talk is cheap, show the code.
#!/usr/bin/python import sqlite3 def writeFile(row): fp = open("D:/project/code/202406/faint/content/posts/p{}.rst".format(row[0]),"w",encoding="UTF-8") fp.write("==================================================================================================\n") fp.write("{}\n".format(row[1])) fp.write("==================================================================================================\n\n") fp.write(":author: malic\n") fp.write(":date: {}\n".format(row[2])) fp.write(":slug: p{}\n".format(row[0])) fp.write(":category: All\n") fp.write(":tags: {}\n".format(row[4])) fp.write(":summary: ...\n\n") fp.write(".. raw:: html\n\n") ctx = row[5].split("\n") for line in ctx: fp.write("\t{}\n".format(line)) fp.close() conn = sqlite3.connect(r'D:\archive\server\wordpress_playground\wp-content\database\.ht.sqlite') c = conn.cursor() cursor = c.execute(""" SELECT wp_posts.ID as post_id --0 , wp_posts.post_title as title --1 , wp_posts.post_date_gmt as date --2 , wp_posts.post_name as slug --3 , group_concat(wp_terms1.name) AS post_tag --4 , wp_posts.post_content as html --5 FROM wp_posts LEFT JOIN wp_term_relationships ON wp_posts.ID = wp_term_relationships.object_id left JOIN wp_term_taxonomy ON wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id LEFT JOIN wp_terms wp_terms1 ON wp_term_taxonomy.term_id = wp_terms1.term_id -- AND wp_term_taxonomy.taxonomy = 'category' where wp_posts.post_type = 'post' AND wp_posts.post_status = 'publish' GROUP BY ID """) for row in cursor: writeFile(row) conn.close()