You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Jsoup获取的Elements类型中逐行输出每篇文章的标题

你现在遇到的问题核心是直接输出Elements类对象时,它的默认序列化逻辑会把所有选中元素的内容直接拼接,不会自动加分隔符和标签结构,按以下步骤处理即可实现需求:

解决方法

1. 提前配置Telegram Bot的解析模式

调用机器人发消息接口时,先指定解析模式为HTML,这样你拼接的h3标签会被Telegram识别为对应格式渲染。如果更习惯用Markdown格式,也可以指定为MARKDOWN解析模式。

2. 遍历元素拼接格式化内容的代码示例

// 初始化内容拼接容器
StringBuilder sendContent = new StringBuilder();

// 遍历所有抓取到的标题元素
for (Element titleNode : article) {
    // 提取标题文本
    String titleText = titleNode.text();
    // 可选:提取标题对应的跳转链接,不需要可以跳过这行
    String titleUrl = titleNode.attr("href");
    
    // 每个标题用h3标签包裹,末尾加换行符分隔
    sendContent.append("<h3>")
               // 不需要带链接的话可以删掉a标签部分
               .append("<a href=\"").append(titleUrl).append("\">")
               .append(titleText)
               .append("</a>")
               .append("</h3>\n");
}

// 最后把拼接完成的sendContent作为消息内容传给发消息接口即可

可选适配方案

如果用Markdown解析模式,把h3标签替换为Markdown的三级标题格式即可:

sendContent.append("### ").append(titleText).append("\n\n");

内容的提问来源于stack exchange,提问作者Deniss Zadorozhniy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 20:06:01