gpt4 book ai didi

java - 如何 "scan"获取信息的网站(或页面),并将其带入我的程序?

转载 作者:IT老高 更新时间:2023-10-28 20:29:42 26 4
gpt4 key购买 nike

嗯,我非常想弄清楚如何从网页中提取信息,并将其带入我的程序(用 Java 编写)。

例如,如果我知道我想从哪个页面获取信息,为了简单起见,百思买商品页面,我如何从该页面获取我需要的适当信息?喜欢标题,价格,描述?

这个过程甚至会被称为什么?我什至不知道要开始研究这个。

编辑:好的,我正在对 JSoup(BalusC 发布的那个)进行测试,但我不断收到此错误:

Exception in thread "main" java.lang.NoSuchMethodError: java.util.LinkedList.peekFirst()Ljava/lang/Object;
at org.jsoup.parser.TokenQueue.consumeWord(TokenQueue.java:209)
at org.jsoup.parser.Parser.parseStartTag(Parser.java:117)
at org.jsoup.parser.Parser.parse(Parser.java:76)
at org.jsoup.parser.Parser.parse(Parser.java:51)
at org.jsoup.Jsoup.parse(Jsoup.java:28)
at org.jsoup.Jsoup.parse(Jsoup.java:56)
at test.main(test.java:12)

我确实有 Apache Commons

最佳答案

使用 HTML 解析器,如 Jsoup .我的偏好高于 other HTML parsers available in Java因为它supports jQuery喜欢 CSS selectors .此外,它的类表示节点列表,Elements , 实现 Iterable这样您就可以在 enhanced for loop 中对其进行迭代(因此无需在普通的 Java DOM 解析器中处理冗长的 NodeNodeList 类)。

这是一个基本的启动示例(只需将 latest Jsoup JAR file 放在类路径中):

package com.stackoverflow.q2835505;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

public class Test {

public static void main(String[] args) throws Exception {
String url = "https://stackoverflow.com/questions/2835505";
Document document = Jsoup.connect(url).get();

String question = document.select("#question .post-text").text();
System.out.println("Question: " + question);

Elements answerers = document.select("#answers .user-details a");
for (Element answerer : answerers) {
System.out.println("Answerer: " + answerer.text());
}
}

}

您可能已经猜到了,这会打印您自己的问题和所有回答者的姓名。

关于java - 如何 "scan"获取信息的网站(或页面),并将其带入我的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2835505/

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