问题标签 [jtidy]
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.
jsoup - 格式化 HTML jericho、jTidy 或 JSoup 的片段?
我想格式化/缩进 HTML 片段
进入这个
我尝试了 jTidy 和 JSoup,但是他们使用和/或或调整我的 HTML。我想要一些可以简单地格式化我的 HTML 的一部分的东西,就像上面的例子一样。
我找到了 jericho,它似乎可以做我想做的事,但我更喜欢使用 jTidy/JSoup。
可以用 jTidy 或 JSoup 做我想做的事吗?
java - 中文内容的 jtidy 解析问题
我遇到了 jtidy 解析器的问题,其中包含以下中文内容:
解析后,它会在字符“e”之后返回一个额外的 e,例如...
我正在使用最新版本的 jtidy。
java - Jtidy - 如何保留内联元素之间的空间
我的 Html 源是这样的
转换后的输出是这样的(没有空格):- HelloWorld
java - jTidy 漂亮的打印自定义 HTML 标签
我正在尝试使用 JTidy 漂亮地打印用户生成的格式良好的 HTML:
这是我的配置:
但是 jTidy 正在删除我的 AngularJSdatasource
指令。有没有办法解决这个问题?
我从日志中得到这个:
删除tidy.setXHTML(true)
或将其设置为 false 并添加tidy.setXmlTags(true)
实际上解决了这个问题,它开始考虑用户定义的标签,但这不是一个好的解决方案,因为 JTidy 开始尝试关闭自封闭标签。
我需要一个文本编辑器的格式化程序。我无法保证我们的用户将定义和使用哪些指令。它必须是适用于任何用户定义指令的通用解决方案
java - JTidy 正在包装我的段落
我正在使用 JTidy 和 Flying Saucer 从 HTML 创建 PDF 文档。在将文档传递到 Flying Saucer 之前,我使用 JTidy 确保所有元素都干净且格式正确。
我遇到了一个我无法弄清楚的 JTidy 问题。有一个“p”元素包含大量文本,它是从数据库中填充的,并已使用空格进行格式化。在 HTML 中,它使用样式“white-space: pre-line;”显示。所以它显示了这样的东西
这在浏览器中正确显示,我们根据它们的空格划分了部分。然而,通过 JTidy 运行后,上面的代码变成了
本质上,它只是将所有文本包装成一个大部分,该部分仅适用于一定数量的字符,然后换行到下一行。因此,由于我使用的是预行,因此生成的 PDF 中的输出是错误的。我查看了http://jtidy.sourceforge.net/apidocs/org/w3c/tidy/Tidy.html上的文档,但找不到解决方案。到目前为止,我的 Java 代码看起来像这样
我试过使用
但这并没有改变输出。任何帮助,将不胜感激。
richfaces - 不显示 JTiday 解析的数据
我正在使用 JSF 2.2 和 RichFaces 4.5.1。在其中一个中,rich:popupPanel
我正在使用h:outputText
标记来显示由 JTidy 解析的 HTML 数据。数据是来自我们正在使用的 Web 服务之一的响应。
JTidy 在解析的 HTML 中添加了 CDATA 标记,这似乎是数据未显示在屏幕上的主要原因。但是,如果我删除 CDATA 它可以正常工作,而且如果我将h:outputText
标签从丰富的弹出面板中取出,那么即使使用 CDATA 它也可以正常工作。
谁能告诉我为什么 CDATA 是其中的h:outputText
一部分时不显示数据的原因rich:popupPanel
?
这是我的弹出窗口:
java - Jmeter中的Jtidy StringIndexOutOfBoundsException
我想使用 JMeter 从网页中检索内容。
我要查找的数据位于 javascript 块中:
假设我想要name
映射 id=id1 中脚本块内的变量值,
其中还有一个变量song
。
我使用 XPath Extractor 来获取脚本内容(CSS/Jquery 不会获取 javascript 内容,因为它不是纯 HTML):
.//map[@id='id1']/script[contains(.,'song')]
XPath 找不到数据,因为我的 HTML 很脏(一些缺少标签结尾的野东西等等......)所以我需要使用 Jtidy 清理它(使用“Tidy(容错解析器)”选项)
备注:
- 我不拥有我正在处理的网页。我必须处理这个可怕的 HTML。
- 网页中有很多maps
元素,每个元素都有一个带有song
变量的脚本:我不能直接使用正则表达式(据我所知)
问题 :
问题是:我的 HTML 包含奇怪的国际字符wé hà bêêêê ...(是的,法语,对此感到抱歉)并且 Jtidy 无法正确处理这种特殊情况:错误 #205 StringIndexOutOfBoundsException while lexing script content
结果 Xpath 提取器失败了,我的整个测试计划都被卡住了。
我设计了一个自定义解决方案,但我发现它有点复杂。也许我可以更好地处理这个问题。
我的解决方案:
我使用tagsoup java库清理HTML输出并将其存储在一个JMeter变量中,然后通过Xpath处理(勾选“应用到”中的“JMeter变量”选项),最后我使用了一个正则表达式来让我的Lionel Richie的东西工作.. .
JMeter
|->HTTP Request
|->BeanShell PostProcessor->tagsoup > var RESPONSE
|->Xpath Extractor, Apply to var RESPONSE > var XPATH_OUTPUT
|->Regular Expression Extractor, Apply to var XPATH_OUTPUT
要让 tagoup 与 JMeter 一起工作,只需将 jar 放在 lib 目录中,然后使用 BeanShell PostProcessor。
使用的 BeanShell 代码:
java - JTidy 报告“发现 3 个错误!”...但没有说明它们是什么
我有一大块以编程方式生成的 HTML。我使用以下 Java 代码通过 Tidy(版本 r938)运行它:
我得到以下输出:
麻烦的是,Tidy 没有告诉我它发现了什么 3 个错误。
我在这里撒了一点小谎。上面的输出实际上遵循所有 247 个警告的长列表(主要是修剪空div
元素)。我可以压制那些有tidy.setShowWarnings(false)
; 无论哪种方式,我都没有看到错误报告,所以我无法弄清楚我需要修复什么。300Kb 的 HTML 对我来说太多了。
我尝试了多种方法来查找错误。遗憾的是,我无法通过 validate.w3.org 运行它,因为 HTML 文件位于专有网络上。信息最丰富的方法是在 IntelliJ IDEA 中打开它;这揭示了十几个重复的 div ID,我已修复。错误仍然发生。
我四处寻找有关此问题的其他提及。虽然我发现很多诸如“如何使用 JTidy 从解析的 HTML 中获取错误/警告消息?”之类的内容。,他们似乎都在要求不同的东西,或者假设条件根本不适合我。例如,我收到警告就好了;这是我需要的错误,即使我打电话setShowErrors(100)
或其他什么都没有报告。
我是否必须深入研究 Tidy 的源代码并对其进行调试,从它报告错误的地方开始?或者有什么更简单的我可以做的吗?
java - JTidy 无法处理脚本元素内的 HTML 标签
(这是我几天前遇到的一个问题的后续,JTidy 在 300k HTML 文档中报告了 3 个错误,但没有报告在哪里。在对问题进行了一些研究之后,我发现似乎是导致错误的原因,并且我非常怀疑为什么,但我还没有决定如何处理它。)
这是一个小的独立 HTML 表达式,它会导致 JTidy 报告错误:
Javascript 字符串常量包含 HTML 标记,这些标记始终使 JTidy 关闭 - 删除下划线元素,JTidy 完美地完成解析。更准确地说,JTidy 的解析器在结束标记上报告错误;开始标签很好(输出可能有些错误,但对于我以后的目的来说已经足够了)。即使您注释掉字符串,也会报告错误:
我认为可以肯定地说以上是有效的 HTML;但我找不到任何关于如何处理的文档。环顾四周,我发现这已在 tidy-html5 中修复;它似乎只在 Java 端口 JTidy 中被破坏。
再搜索一下,我发现我使用的是最新的 JTidy,根据它的SourceForge 页面;r938 版本是我的 Maven 存储库中的版本。(实际上,源是在沙箱中解压的,所以我可以调试这个问题。)我上面链接的错误报告是 2015 年的;JTidy r938 于 2009 年问世。
我是否认为 JTidy 处理不正确?如果是这样,我应该尝试修复它,还是在某个私人分支中解决了它?我不会称自己为解析器/词法分析器专家,但如果必须,我可以应付自如。
java - 在java中使用Jtidy和Itext将html转换为pdf时未应用样式
我使用 Jtidy 和 java 将文档从 html 转换为 pdf 的问题是,当我转换 pdf 时,样式未应用于文档。当我尝试其他解决方案(Jsoup、HTMLworker、xmlWorker)时,文档也格式不正确。
这是 html 代码的一部分: