问题标签 [tag-soup]

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

html - 点 TagSoup Parser 使用 HTML5 版本

我希望 TagSoup 设置使用 HTML5 标准。
我正在使用 tagoup 解析器,它符合 HTML4,它不允许<div><a>标签内。因此,解析错误的 HTML。但是,HTML5 允许使用相同的。如何使 tagsoup (org.ccil.cowan.tagsoup) 使用 HTML5 标准。例如,

变成,

0 投票
1 回答
158 浏览

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 代码:

0 投票
1 回答
197 浏览

xml - JDOM HTML 到 XML 的转换 - 即使它有一个子节点,也会生成父节点 selfend 标记

JDOM 解析器用于解析和转换 html 文件到 XML 文件。解析html文件后,即使它有一个子节点,也会生成自结束标记。输入 HTML

输出XML

预期的 XML

Java 代码

0 投票
1 回答
134 浏览

html - 使用 Tagsoup Parser 解析 HTML 5 锚标记

我正在使用 tagoup 解析器,它遵循 HTML4 并且不允许<p>标签内的<a>标签。因此,它正在解析不正确的 HTML。我浏览了 tagsoup 文档,但找不到任何有用的信息,通过这些信息可以将 tagsoup (org.ccil.cowan.tagsoup) 配置为使用 HTML5 标准。例如

变成

0 投票
1 回答
101 浏览

linux - 每当我尝试运行此代码时,我的 Linux 终端都会冻结

所以我正在做这个作业,我有这个代码,但我似乎无法让它工作。每次我运行代码时,终端都会在某一点冻结并且不会继续,我已经终止了进程。

我认为我的问题与我的 wget 行有关,但我不知道该怎么做,因为我需要从 date 函数中获取确切的变量。关于做什么的任何建议?

编辑:

我现在没有冻结终端问题,但现在它显示 FileNotFoundException,即使文件正在保存并在我的文档中。该网站是否会导致该问题,但我无法想象为什么要保存文件。

0 投票
1 回答
444 浏览

java - 使用 Java 的 Hello World 撒克逊人

使用JAR通过 apt for 安装的文件Saxon-HE并进行tagsoup解析html是单行的:

我将如何从 Java 中做到这一点? 特别是,Saxon此执行需要哪些导入? 也许使用Saxon和 JAXP 接口?

还:

http://codingwithpassion.blogspot.com/2011/03/saxon-xslt-java-example.html

0 投票
2 回答
256 浏览

java - SAX 错误:不兼容的类型:字符串无法转换为 InputSource

相关代码;关于实例化的barfs SAXSource

JavaDoc

使用 XMLReader 和 SAX InputSource 创建一个 SAXSource。Transformer 或 SAXTransformerFactory 会将自己设置为阅读器的 ContentHandler,然后调用 reader.parse(inputSource)。

InputSource节目:

因此,例如html,这将需要一个字符流来读取InputStream??

tagsoup更好地用于这种身份转换吗?但是,怎么做?

0 投票
2 回答
52 浏览

html - 使用 basex 解析带有扩展 unicode 字符的 html 时出错

我一直面临使用basex html 解析器解析带有扩展 unicode 字符的 html 的问题。是否可以使解析器支持特殊字符?

代码:

输出:

该错误似乎与output-encodingbasex 不支持的 tagsoup 库的参数有关。

例如:-