如何在docutils中获取解析器错误作为异常

2024-04-18 11:26:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下面一段简单的代码来解析reSt文件并返回相应的DOM树。你知道吗

from docutils import nodes, utils
from docutils.parsers import rst

def _rst_to_dom(self, txt):
    """Parse reStructuredText and return corresponding DOM tree."""

    document = utils.new_document("Doc")
    document.settings.tab_width = 4
    document.settings.pep_references = 1
    document.settings.rfc_references = 1
    document.settings.raw_enabled = True
    document.settings.file_insertion_enabled = True

    rst.Parser().parse(txt, document)

    return document.asdom()

这非常有效,但是当解析器发现输入有问题时,它不会引发异常以便我的程序知道有问题,而是将错误消息打印到标准输出并返回一个树,其中包含它可以做的事情。如何让它引发异常?或者,我怎么知道出了什么事?你知道吗


Tags: 代码fromimporttxtresttruereturnsettings