问题标签 [lxml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7597 浏览

python - 如何在python中解析格式错误的HTML

我需要浏览已解析 HTML 文档的 DOM 树。

在使用 lxml 解析字符串之前,我正在使用 uTidyLib

a = tidy.parseString(html_code, options) dom = etree.fromstring(str(a))

有时我得到一个错误,似乎 tidylib 无法修复格式错误的 html。

如何在不出错的情况下解析每个 HTML 文件(仅解析无法修复的文件的某些部分)?

0 投票
1 回答
1474 浏览

python - 如何使用 lxml 以编程方式实例化注释元素?

我正在使用 lxml 以编程方式构建 HTML,并且需要在输出中包含自定义注释。虽然 lxml 中有处理注释的代码(可以在解析现有 HTML 代码时实例化它们),但我找不到以编程方式实例化注释的方法。

任何人都可以帮忙吗?

0 投票
2 回答
1525 浏览

python - 如何使 lxml 的解析器保留根元素之外的空格?

我正在使用 lxml 来操作一些现有的 XML 文档,并且我想引入尽可能少的差异噪声。不幸的是,默认情况下lxml.etree.XMLParser不会在文档的根元素之前或之后保留空格:

这可能使用lxml吗?底层的 libxml2 是否支持它?

0 投票
3 回答
14884 浏览

python - 使用 lxml 的 etree 创建 doctype

我想将文档类型添加到我使用 LXML 的 etree 生成的 XML 文档中。

但是我不知道如何添加文档类型。硬编码和连接字符串不是一种选择。

我期待与如何在 etree 中添加 PI 类似的东西:

但这对我不起作用。如何使用 lxml 将 a 添加到 xml 文档中?

0 投票
1 回答
1633 浏览

python - 使用 ElementTree/lxml 查找文本字符串的父标记

我正在尝试获取一串文本,然后从 html 中“提取”段落/文档中的其余文本。

我目前的方法是尝试在已用 lxml 解析的 html 中找到字符串的“父标签”。(如果您知道解决此问题的更好方法,我会全力以赴!)

例如,在树中搜索“TEXT STRING HERE”并返回“p”标签。(请注意,我不会事先知道 html 的确切布局)

谢谢你的帮助!

0 投票
1 回答
487 浏览

python - lxml 使用 cssselector 检索奇数项目

在我的测试文档中,我有几个标记为“item”的类,目前我正在使用以下内容来解析带有此类的 html 文件中的所有内容

我希望它选择所有奇怪的项目,就像在 javascript 中使用 JQuery

逐字尝试我收到以下错误

lxml.cssselect.ExpressionError:伪类符号(u'odd',6)未知

我知道我自己实现这将是微不足道的,我想知道这是否由 lxml 本机支持。

0 投票
2 回答
2341 浏览

.net - 如何让 lxml 在 IronPython 下工作?

我需要将一些严重依赖 lxml 的代码从 CPython 应用程序移植到 IronPython。

lxml 非常 Pythonic,我想在 IronPython 下继续使用它,但它依赖于 libxslt 和 libxml2,它们是 C 扩展。

有谁知道在 IronPython 下允许 lxml 或没有那些 C 扩展依赖项的 lxml 版本的解决方法?

0 投票
2 回答
7186 浏览

python - 更改 lxml 中 etree.tostring 的默认缩进

我有一个 XML 文档,我正在使用它进行漂亮的打印lxml.etree.tostring

默认缩进级别是 2 个空格,我想将其更改为 4 个空格。函数中没有任何参数tostring;有没有办法用lxml轻松做到这一点?

0 投票
15 回答
27080 浏览

python - 如何在不使用 MacPorts 或 Fink 的情况下在 OS X Leopard 上安装 lxml?

我已经尝试过这个并在过去多次遇到问题。有没有人有在没有 MacPorts 或 Fink 的情况下在 OS X 上安装 lxml 的方法,这绝对有效?

最好使用完整的 1-2-3 步骤来下载和构建每个依赖项。

0 投票
1 回答
340 浏览

python - Python 包依赖于 libxml2 和 libxslt

除此之外lxml,是否有人知道依赖于 libxml2 和 libxslt 的 Python 包?