首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用docutils.parsers.rst在reStructredText中查找超链接

使用docutils.parsers.rst在reStructredText中查找超链接
EN

Stack Overflow用户
提问于 2019-03-13 23:19:57
回答 1查看 73关注 0票数 1

对于一些内部一致性检查工具,我正在尝试组合所有超链接的列表(外部引用、图像等)。在第一次使用python3时。

我使用以下代码成功解析了rst并遍历了整个树:

代码语言:javascript
复制
        parser = docutils.parsers.rst.Parser()
        components = (docutils.parsers.rst.Parser,)
        settings = docutils.frontend.OptionParser(components=components).get_default_values()
        document = docutils.utils.new_document('<rst-doc>', settings=settings)
        parser.parse(f, document)

        class MyVisitor(docutils.nodes.NodeVisitor):
            def visit_reference(self, node: docutils.nodes.reference) -> None:
                """Called for "reference" nodes."""
                print("reference", node)

            def unknown_visit(self, node: docutils.nodes.Node) -> None:
                """Called for all other node types."""
                print("unknown_visit", node)

        visitor = MyVisitor(document)
        document.walk(visitor)

然而,我现在完全被困在如何在结果中找到对图像和外部链接(URL)的引用。

有人知道如何以编程方式从解析的文档中检索这些外部链接吗?

EN

回答 1

Stack Overflow用户

发布于 2019-03-14 00:14:13

是,使用正则表达式库

https://www.w3schools.com/python/python_regex.asp

您应该能够匹配类似于(http[^\s]*)的内容,这意味着匹配文本"http“,后跟空白倒数组中的零个或多个字符(除空白字符以外的任何字符)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55145402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档