gpt4 book ai didi

java - 使用 ColdFusion 在 jSoup select() 中出现意外结果

转载 作者:行者123 更新时间:2023-11-30 07:17:05 26 4
gpt4 key购买 nike

出于某种原因,我对 jSoup 对象的 select() 调用总是得到奇怪的结果。

这是我的代码(我试图获取简单的标题和元标记值并将它们插入到名为“请求”的对象中):

<cfset jsoupObject = createObject("component","lib.javaloader.JavaLoader").init([ expandPath('/lib/jsoup-1.7.2.jar') ]) />
<cfset jsoupCreate = jsoupObject.create("org.jsoup.Jsoup") />
<cfset parsed = jsoupCreate.parse(document.filecontent) />

<cfset variables.request = {} />
<cfset variables.request.title = parsed.select("title").first() />
<cfset variables.request.description = parsed.select("meta[name=description]").first() />

因为我在 CFC 中有这个,所以我使用的是 Java Loader,它工作正常。 document.filecontent 是一段 HTML 代码,可以正常工作。

当我输出我的请求对象时,我得到以下结果:

enter image description here

这里可能出了什么问题?

您可以忽略请求对象中的其他键,这里唯一需要注意的是descriptiontitle,它们都会给我带来奇怪的结果!

我在此之前的一些代码中通过 CFHTTP 加载我的 HTML(一切正常)。

非常感谢您的帮助。

非常感谢,迈克尔。

更新:

转储 'parsed' 我得到以下信息:

enter image description here

转储 parsed.select("title") 我得到:

enter image description here

最佳答案

您正在存储实际的元素而不是标签的内容,我认为这是您的意图。即使您希望它作为 Java 对象转储,也可能存在一些阻止它的怪癖。您可能希望存储实际文本而不是转储元素,例如:

<cfset variables.request.title = parsed.select("title").first().text() />

关于java - 使用 ColdFusion 在 jSoup select() 中出现意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16437331/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com