java - 如何在多个结构中获取链接和java中的元素
java中的元素
问题描述
首先,我是一个新手,从最多 2 个月开始编码,这是我的第一个问题,BC 我不敢相信这是不可能的,但我在谷歌搜索后找不到解决方案。我希望我能在这里得到帮助。我有以下问题。我想从 div id 和 div 类(标记)的构造中提取一个链接(标记),我不能通过网站的源代码轻松访问它。在源代码中只有一个 div id 打开和关闭(id react-root),实际需要的数据在哪里(通过检查元素找到)。我从 10h+ 开始就在谷歌上搜索,只是无法获得一个代码片段,它在 java 中给了我想要的链接。我已经用 jsoup 尝试了一些东西:
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
public class HTMLParserExample1 {
public static void main(String[] args) {
Document doc;
try {
// need http protocol
doc = Jsoup.connect("https://www.challengermode.com/teams/fb475ef0-d9c8-e811-bce7-000d3a214d8f/members").get();
var x = doc.getElementById("react-root");
// get page title
String title = doc.title();
System.out.println("title : " + title);
// get all links
Elements links = doc.select("a[href]");
for (Element link : links) {
// get the value from href attribute
System.out.println("\nlink : " + link.attr("href"));
System.out.println("text : " + link.text());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
解决方案
因此,如果您喜欢使用 JSoup 处理数据,请查看提取数据下的章节:
如果您想更改为其他库,DOM、XPath 和 CSS 选择器应该是查找的好关键字。
编辑:在您的代码中,我可以看到您已经尝试了每个部分。坚持使用 doc.select() 调用,但只关注其中的字符串。检查 CSS 选择器以发现它们可以做很多事情。
推荐阅读
- netbeans - 失败的 NetBeans Java Native Packaging for Linux
- oracle - Oracle Forms 12c 与 BI Publisher 的集成
- c - 启用 linux 服务以显示弹出窗口
- visual-studio - Windows 应用商店 - 无法安装应用,因为您的 PC 可能不满足某些要求
- php - SLIMFramework:从一个参数拆分为三个参数
- amazon-web-services - 基于 AWS 功能的许可
- python - PyCharm 在项目文件中没有找到用法
- scala - 在 HDFS 上预先组合表并在 Spark 中以零洗牌读取
- aws-lambda - Amazon Lex 可以与其他平台(例如 Google Home)一起使用吗?
- python - 搜索字符串并替换值