问题标签 [jericho-html-parser]

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 回答
430 浏览

java - 如何使用 Java 解析 Html 并以字符串形式获取结果

我想解析一个 Html 并将结果作为一个字符串。鉴于外部 Html 的主体包含另一个 Html 字符串,我希望将内部 Html 作为输出字符串。

示例> 输入 HTML:

输出字符串:

重要提示:我正在使用 HTML 编辑器,如果我在其中输入内容,它会在执行 getText 时返回该输入的 HTML 表示,上面的第一个 Html 字符串仅是该表示。

此外,输出字符串应该与我在这里运行第一个字符串时相同(http://www.w3schools.com/html/tryit.asp?filename=tryhtml_basic

请帮我解决一下这个。

0 投票
1 回答
511 浏览

jsoup - 格式化 HTML jericho、jTidy 或 JSoup 的片段?

我想格式化/缩进 HTML 片段

进入这个

我尝试了 jTidy 和 JSoup,但是他们使用和/或或调整我的 HTML。我想要一些可以简单地格式化我的 HTML 的一部分的东西,就像上面的例子一样。

我找到了 jericho,它似乎可以做我想做的事,但我更喜欢使用 jTidy/JSoup。

可以用 jTidy 或 JSoup 做我想做的事吗?

0 投票
1 回答
1733 浏览

html - 如何在 JAVA 中使用新代码更新 HTML Header 部分

我有几个 html,我想用我的新代码行替换标题部分。(我的新代码是 - 新的 CSS、新的 JS 文件导入和一些脚本)。

我想替换所有现有的 Header 部分并替换为新的。这种变化应该是永久性的。

我知道如何在 JS 或 Jquery 中执行此操作,但这是不可行的,因为它会在每次加载 html 时执行。

如果我在 java 中得到一个解决方案,我将只运行一次特定的后端代码,它会永久更新我的 HTML 文件。

替换为 AND

我还想在我更新的 HTML 文件的 Body 标记中添加新的几个 Div 标记结构。

请帮忙。:)

0 投票
1 回答
478 浏览

java - 移除 html 中的其他语言空间

我想使用 StringUtils.strip() 修剪标签名称和属性之间的空格。因为我有一些空间无法通过以下 Jericho 方法删除:

  • CharacterReference.decodeCollapseWhiteSpace(htmlFragment))
  • TextExtractor -Tag[] allTags = source.fullSequentialParse();

第一种方法删除正常空间,但不删除其他语言空间。这是我得到的错误。例如

jericho 中还有一个 generateHTML 方法,但我们必须提供所有属性值等

在完全顺序解析中,它无法识别其他语言空间。

如何仅删除标签名称和属性之间的其他语言空间?(属性值之间的其他语言空间是可以的)这就是为什么我不能这样做string.replaceALL()

0 投票
3 回答
7042 浏览

java - 如何将 Windows-1251 文本转换为可读的内容?

我有一个字符串,它由 Jericho HTML 解析器返回并包含一些俄语文本。根据source.getEncoding()相应 HTML 文件的标头,编码为 Windows-1251。

如何将此字符串转换为可读的内容?

我试过这个:

该变量bytes包含我的调试器中显示的数据,它是net.htmlparser.jericho.Element.getContent().toString().getBytes(). 我只是在此处复制并粘贴该数组。

这不起作用 -readableString包含垃圾。

如何修复它,即确保正确解码 Windows-1251 字符串?

更新 1(30.07.2015 12:45 MSK):将调用中的编码更改convertString为 时Windows-1251,没有任何变化。请参阅下面的屏幕截图。

截屏

更新 2:另一次尝试:

第二张截图

更新 3(30.07.2015 14:38):我需要解码的文本对应如下所示下拉列表中的文本。

预期结果

更新 4(30.07.2015 14:41):编码检测器(代码见下文)说编码不是Windows-1251,而是UTF-8

0 投票
0 回答
92 浏览

html - 解析服务器端非 html 标签

我希望解析一个播放框架模板文件,带有这样的标签..

如何使用这种语法创建标签?

首先

(hashtag){form --> 标签名称

@UneReponse.modifier(unereponse.id) --> 名称

方法:'PUT' 和 id:'creationForm' --> 属性

} 标签结束;

有什么解决办法吗?

谢谢

0 投票
2 回答
97 浏览

java - 如何从任意 HTML 中解析出 JavaScript

我正在使用 jericho 对 html 进行消毒,效果很好。除了在一种情况下我无法弄清楚。我想完全删除任何脚本和脚本内容。现在我删除了脚本标签,但保留了实际的脚本内容。

所以目前我创建了一个 Source 对象并执行了一个 fullSequentialParse。然后我创建一个 OutputDocument 并遍历每个标签。

当我到达“脚本”标签时,我只想用“”替换整个内容。

有任何想法吗?

TIA

0 投票
1 回答
132 浏览

jericho-html-parser - 从 Jericho SourceFormatter 获取错误字符串

我正在使用 jericho 的 SourceFormatter 对 HTML 进行缩进。现在,如果我的 HTML 格式化程序出现问题,请将其发送到服务器控制台。

如何捕获错误并将其输出到我的日志系统中(实际上我想将它作为字符串/对象获取)?

这是我使用的代码示例

LoggerProvider - 代表 hericho 的登录系统

0 投票
1 回答
940 浏览

java - 从 JBoss 4.2 迁移时的 JBoss wildfly 10 NoClassDefFoundError

我有一个运行到 JBoss 4.2 中的 spring mvc 应用程序。我正在尝试将此 Web 应用程序迁移到 JBoss wildfly 10(wildfly-10.0.0.Final 版本)。

当我尝试部署我的应用程序时显示此错误:

寻找网络,我读到我需要加载jar“jericho-html-2.6.1.jar”。为此,我在 ${wildfly_home}/modules/system/layers/base/au/id/jericho/lib/html/main 添加了 jericho-html-2.6.1.jar 和这个 module.xml

我在standalone.xml 中添加了扩展

但我得到同样的错误。

0 投票
1 回答
275 浏览

java - Java - 未定义 OutputDocument 类型的方法 replace()

嘿,我在 Java EE 项目上使用 Eclipse,它显示了问题

对于 OutputDocument 类型,方法 replace(Element, String) 未定义

我已经导入了au.id.jericho.lib.html.OutputDocument库,我不知道还能做什么

这是使用它的地方

PS我没有写这个代码。

编辑: 我使用了错误版本的库,我使用的是jericho-html-2.1并且我更改为jericho-html-2.3,现在它可以工作了,谢谢