当前位置: 首页 > 知识库问答 >
问题:

如何使用Jsoup for android从RSS提要中使用CDATA从标记检索数据?

谭景明
2023-03-14

我想使用jsoup从RSS提要检索数据。我可以在所有的标签,但我不能这样做,当有内容:编码标签。请任何人帮助我如何从内容:编码标签获取数据。我的订阅源URL是https://sambad.in/feed/我的代码也是Document doc=Jsoup。解析(String.valueOf(response));元素itemElements=doc。选择(“项目”);

            for (int i = 0; i < itemElements.size(); i++) {

                Element item = itemElements.get(i);
                String title = item.child(0).text();
                String link=item.child(1).text();
                String imgUrl=extractImageUrl(item.select("description").text());
                String description = extractPostText(item.select("description").text())+"From Sambad: By Pin2";
                String fullnews=extractPostText(item.children().select("http://purl.org/rss/1.0/modules/content/encoded").text());

共有1个答案

颜昕
2023-03-14

要使用的选择器将是内容|编码的。要指定带名称空间的标记,请将替换为|。有关更多示例,请参阅jsoup选择器文档。

下面是Try-Jsoup上的一个实例。

有几点需要注意:

  1. 对于RSS,应该使用XML解析器而不是(默认)解析器。通常,如果您使用的是Jsoup,那么这种情况会自动发生。连接(url)以加载内容,因为它根据内容类型设置解析器。但是您正在绕过它(通过提供字符串输入),所以您需要手动指定它
  2. content | encoded选择器的结果将是一组元素,其中包含带有HTML标记的文本(不是解析的HTML元素)。这是因为RSS中的内容是HTML编码的(转义的)。如果希望将其解析为HTML,那么接下来应该使用Jsoup。文本上的parseBodyFragment(String)方法
 类似资料:
  • 我试图通过apache cordova获取rss提要并在移动设备上显示内容。但是,如果我不提供指向的url。xml文件,读取器不加载。例如 这不会加载,但如果我使用 它起作用了。下面是我正在使用的rss阅读器javascript文件: 在索引上。html页面: 任何帮助将不胜感激。我认为这与feed-reader.js中xml的实际解析有关,但不完全确定。 谢谢 更新: 我得到了预期的url,但当

  • 我想从. kml文件中提取值,以便使用R进行描述。 文件如下: 这是我想提取的,包含在 即。: xmlToList给我,我认为NULL,因为CDATA标记意味着以下内容不被解析器处理: 我认为这就是所谓的“CDATA这个术语是用来描述XML解析器不应该解析的文本数据……解析器会忽略CDATA节中的所有内容。CDATA节以“”开头 以下内容对我也不起作用,也许是出于与CDATA相关的同样原因: 有人

  • 我用Java编写了一个应用程序,它使用CloudGarden API解析JSAPI语法,从语法规则返回标记,然后相应地处理这些标记。CloudGarden API的问题是它对Windows的依赖性。我需要一个可以执行相同任务的跨平台库。我不需要语音合成,也不需要语音识别。本质上,一个字符串被传递给包含一些转录语音的程序。我需要根据语法文件解析这个字符串,以检索动作标记(JSGF语法规则中{}之间的

  • 问题内容: 我正在尝试使用pyodbc从SQL Server检索数据,并使用Python将其打印在表中。但是,我似乎只能检索列名和数据类型之类的东西,而不能检索列每一行中的实际数据值。 基本上,我试图复制一个检索服务器数据并将其显示在表格中的Excel工作表。我连接到服务器没有任何问题,只是我似乎无法找到表中的实际数据。 这是我的代码的示例: 但是,这样做的结果只是给我一些诸如表名,列名以及一些整

  • 我要提取的数据来自这个网站https://www.adobe.com/support/security/advisories/apsa11-04.html。我只想提取 发布日期:2011年12月6日最后更新:2012年1月10日漏洞标识符:APSA11-04 CVE编号:CVE-2011-2462 代码: 输出: 我不想要这些信息。我该如何过滤呢? 平台:全部*注意:Adobe Reader fo

  • 我有一个内置在Django的系统可以接收数据。我将数据存储如下: 我们期望每个传感器的在每个后续消息中增加一个。如您所见,传感器B的message_id为:1、2、4、7。这意味着传感器B丢失了编号为3、5和6的消息。在这种情况下,我们需要调查丢失的消息,特别是如果丢失了很多消息。所以我现在想要一种方法,当它发生的时候,知道这些丢失的消息。 所以我想检查一下在过去的五分钟内是否缺少一条消息。我希望