问题标签 [html5lib]

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 投票
1 回答
447 浏览

python - 哪个版本的 html5lib 是稳定的?

html5lib指出它的最新版本 (0.11) 有点旧。使用 Python 部分时,我遇到了问题 70问题 59中所述的递归问题,但找不到稳定的最新 Mercurial 版本。

最新的提示不好,我收到以下错误python setup.py install

我在运行时收到以下错误:

我在带有 lxml 和 BeautifulSoup 的 Python 2.5.2 上使用它。

0 投票
3 回答
633 浏览

python - 如何使用 Python 向现有 HTML 添加一致的空格?

我刚开始在一个网站上工作,该网站的所有页面都在一行中,这对于阅读和使用来说真的很痛苦。我正在寻找一个工具(最好是 Python 库),它将接受 HTML 输入并返回相同的 HTML 不变,除了添加换行符和适当的缩进。(所有标签、标记和内容都应该保持不变。)

该库不必处理格式错误的 HTML;我首先通过html5lib传递 HTML ,因此它将获得格式良好的 HTML。但是,如上所述,我宁愿它不改变任何实际标记本身;我信任 html5lib,宁愿让它处理正确性方面。

首先,有谁知道仅使用 html5lib 是否可行?(不幸的是,他们的文档似乎有点稀疏。)如果没有,您建议使用什么工具?我见过有人推荐 HTML Tidy,但我不确定它是否可以配置为只更改空格。(如果它从格式良好的 HTML 开始,除了插入空格之外,它会做任何事情吗?)

0 投票
1 回答
4945 浏览

python - 如何在 Windows 上为 Python 安装 html5lib-0.90 库?

我正在使用 Windows,并尝试在 python 上安装 html5lib-0.90 库

是否可以在 Windows 上安装此库?

有教程或安装手册吗?

0 投票
7 回答
16621 浏览

python - 如何使用 html5lib 解析 HTML,并使用 XPath 查询解析后的 H​​TML?

我正在尝试使用 html5lib 将 html 页面解析为可以使用 xpath 查询的内容。html5lib 的文档几乎为零,我花了太多时间试图解决这个问题。最终目标是拉出表格的第二行:

所以让我们试试吧:

看起来不错,让我们看看我们还有什么:

大声笑吗?

严重地。我打算使用一些 xpath 来获取我想要的数据,但这似乎不起作用。那么我能做什么呢?我愿意尝试不同的库和方法。

0 投票
1 回答
329 浏览

python - 跳过对 html5lib 中视频的清理

我在 django 中使用 wmd 编辑器,就像我正在输入的这个。我想允许用户在其中嵌入视频。为此,我在这里使用Markdown 视频扩展。问题是我也在使用 html5lib 清理来清理用户输入,并且它不允许嵌入视频所需的对象标签。

一种解决方案可能是检查知名视频网站的 url 输入,并在这些情况下跳过清理。有更好的解决方案吗?

0 投票
5 回答
4992 浏览

python - BeautifulSoup 用户的 html5lib/lxml 示例?

我正试图摆脱 BeautifulSoup,我喜欢它,但似乎(积极地)不受支持。我正在尝试使用 html5lib 和 lxml,但我似乎无法弄清楚如何使用“find”和“findall”运算符。

通过查看 html5lib 的文档,我想出了一个测试程序:

但这返回无。我注意到,如果我这样做,etree.tostring(root)我会取回所有数据,但我所有的标签都以html(例如<html:table>)开头。但root.find(".//html:tr")抛出一个 KeyError。

有人可以让我回到正确的轨道上吗?

0 投票
1 回答
916 浏览

python - python:获取google adsense收益报告

我需要一个获取 google adsense 收入的 python 脚本,我发现了 adsense 刮板: http : //pypi.python.org/pypi/adsense_scraper/0.5 它使用 Twill 和 html5lib 来刮掉 google adsense 收入数据。当我使用它时,我收到此错误消息:

所以重要的是:

有人可以告诉我错误在哪里吗?有没有更好的方法通过 python 获取数据?谢谢

0 投票
0 回答
625 浏览

python - 使用 lxml 和 html5lib 解析 html,得到“TypeError:insertDoctype() 恰好需要 4 个参数(给定 2 个)”

TypeError: insertDoctype() takes exactly 4 arguments (2 given)一起使用 lxml 和 html5lib 时出现错误。似乎(链接insertDoctype)中的方法需要 4 个参数,而 html5lib 代码(链接)使用 2 个参数调用它。我是否以某种方式使用了这个错误?lxml.html._html5builder.TreeBuilder

这些是我正在使用的版本:

我的源代码:

和错误:

0 投票
1 回答
981 浏览

python - 使用 html5lib.sanitizer 完全删除坏标签

我正在尝试按照文档中的建议使用 html5lib.sanitizer 来清理用户输入

问题是我想完全删除坏标签,而不仅仅是逃避它们(无论如何这似乎是个坏主意)。

此处补丁中建议的解决方法没有按预期工作(它保留 a 的内部内容<tag>content</tag>)。

具体来说,我想做这样的事情:

输入:

输出:

关于如何实现它的任何想法?我尝试过BeautifulSoup,但似乎效果不佳,并且lxml<p></p>在非常奇怪的地方(例如src attrs 周围)插入标签。到目前为止,html5lib 似乎是最好的选择,如果我可以让它删除标签而不是转义它们。

0 投票
1 回答
2042 浏览

python - 如何在 Python 中使用 html5lib 获取 body 元素的内容?

如何通过在 Python中使用来获取<body>元素的内容?html5lib

示例输入数据:<html><head></head><body>xxx<b>yyy</b></hr></body></html>

预期输出:xxx<b>yyy</b></hr>

即使 HTML 被破坏(未封闭的标签,...),它也应该可以工作。