Python restructuredtext:对元数据使用指令

Python restructuredtext:对元数据使用指令,python,restructuredtext,Python,Restructuredtext,我正在基于restructuredtext编写一个简单的网页生成器,我想在文档中添加标签,如下所示 ===== Title ===== :author: Me :tags: foo, bar Here we go ... 我现在想要的是: 拥有某种文档树 找到标记条目,读取它,处理它(就像在命令行上打印标记一样),删除它并渲染剩余的树 因此,我想编写兼容的StructuredText,以防它被编译成与我的程序不同的东西 有人能给我一个提示吗?我在internal方法中发现了这个方法,它

我正在基于restructuredtext编写一个简单的网页生成器,我想在文档中添加标签,如下所示

=====
Title
=====

:author: Me
:tags: foo, bar

Here we go ...
我现在想要的是:

  • 拥有某种文档树
  • 找到
    标记
    条目,读取它,处理它(就像在命令行上打印标记一样),删除它并渲染剩余的树
因此,我想编写兼容的StructuredText,以防它被编译成与我的程序不同的东西


有人能给我一个提示吗?我在
internal
方法中发现了这个方法,它展示了如何获取文档(以及dom树),但是这是最好的方法还是基于正则表达式的方法(查找行,删除行)会容易得多?使用该树还将涉及转换树→ 文档等等。

有一些工具可以帮您完成这项工作。参见

我想我对这两个问题都有一个很好的解决方案。首先,
docutils
发行版中的
core.py
文件显示了如何获取doctree以及如何编写它(例如使用html编写器),请参见
publish\u from\u doctree
publish\u doctree
。然后,还有
docutils.nodes.SparseNodeVisitor
可以对
visit\u field
等方法进行子类化和覆盖,以各种方式操纵文档树。

对不起,这个问题不够精确。我知道如何将rst转换为html,我想在渲染之前拥有我的
标记
行并删除ot。但我认为研究Nabu的来源可能是最接近我的解决方案的事情。