资讯专栏INFORMATION COLUMN

使用Python Markdown 生成 html

levy9527 / 2750人阅读

摘要:越来越喜欢使用编写文档,相对更简单方便,而且可以渲染输出自己喜欢的样式。开发过程中编写的文档方便等版本控制工具管理。完整代码将上的代码保存为然后执行

越来越喜欢使用markdown编写文档,相对doc更简单方便,而且可以渲染输出自己喜欢的样式。
开发过程中编写的文档markdown方便svn、git等版本控制工具管理。

安装 Python-Markdown ,做markdown to html的语法转换

pip install markdown

安装 Pygments 做语法高亮

pip install Pygments

执行下面的命令,生成一个默认的语法高亮css文件,更多可以参考Pygments项目网站

pygmentize -S default -f html > default.css

当前使用的github风格的样式表,代码在这里 ,下载保存为github.css。

完整代码:

# -*- coding: utf-8 

import markdown
import os
import sys
reload(sys)
sys.setdefaultencoding("utf8")

def md2html(mdstr):
    exts = ["markdown.extensions.extra", "markdown.extensions.codehilite","markdown.extensions.tables","markdown.extensions.toc"]

    html = """
    
    
    
    
    
    
    
    %s
    
    
    """

    ret = markdown.markdown(mdstr,extensions=exts)
    return html % ret



if __name__ == "__main__":

    if len(sys.argv) < 3:
        print("usage: md2html source_filename target_file")
        sys.exit()

    infile = open(sys.argv[1],"r")
    md = infile.read()
    infile.close()

    
    if os.path.exists(sys.argv[2]):
        os.remove(sys.argv[2])


    outfile = open(sys.argv[2],"a")
    outfile.write(md2html(md))
    outfile.close()

    print("convert %s to %s success!"%(sys.argv[1],sys.argv[2]))

将上的代码保存为 md2html.py,然后执行

python md2html.py test.md test.html

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38557.html

相关文章

  • Markdown入门指南

    摘要:目前来看,支持语法的编辑器有很多,包括很多网站例如简书也支持了的文字录入。在第一行后指定编程语言,也可以不指定需要注意的是写代码框的前一行最好为空白行,否则无法生成相应的样式使用键即可缩进。 语法包含标题 列表 图片 链接 表格 代码框 分割线 索引 超链接 注释 转义 字体 颜色 导语 Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛...

    Bryan 评论0 收藏0
  • Python:线性代数-LaTeX用法(四十)

    摘要:使用将公式转为,兼容使用在前端页面中加入该引用使用方法默认的数学分隔符是和用于显示数学,而用于行内数学。请特别注意默认情况下不使用行内分隔符这是因为美元符号在非数学设置中经常出现,这可能导致某些文本被意外地视为数学。 在学习线性代数,需要写博客,遇到复杂的数学公式如向量、矩阵、微积分公式没法用普通的方法打印,所以,使用LaTeX解决了这个问题。 一、什么是LaTeX LaTeX, 是一...

    asoren 评论0 收藏0
  • 使用PythonHTML文档转换为Markdown文档

    摘要:前言我的个人博客是搭建的,风格我很喜欢,也不打算更换。今天发现个有趣的库,可以将转换回试验了一下效果还不错。的作用在这里使用号来分割文章的核心内容,舍弃博客的和。 前言 我的个人博客是Hexo+Next搭建的,风格我很喜欢,也不打算更换。最近可能电脑不好使了,两次重装系统,每次都要重新搭建博客,搭建速度也很快,但是依然有个困扰我的问题,那就是电脑卡死的时候有些博客没有备份,只有上传到G...

    syoya 评论0 收藏0
  • 《HelloGitHub》第 68 期

    摘要:在线尝试的进程管理工具。项目包含了代码实现运行过程动画以及相关论文为系统提供人脸识别解锁电脑的工具。在线阅读教科书计算机体系结构基础第三版。 .markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-size:15px;overflow-x:hidden;color:#333}.markdown-b...

    番茄西红柿 评论0 收藏2637
  • Django 博客开发教程 9 - 支持 Markdown 语法和代码高亮

    摘要:注意如果你按照教程中的方法做完后发现代码依然没有高亮,请依次检查以下步骤确保在渲染文本时添加了拓展,详情见上文。有些样式文件可能对代码高亮没有作用,首先尝试用样式文件做测试。在支持语法和代码高亮追梦人物的博客的评论区留言。 为了让博客文章具有良好的排版,显示更加丰富的格式,我们使用 Markdown 语法来书写我们的博文。Markdown 是一种 HTML 文本标记语言,只要遵循它约定...

    zr_hebo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<