gpt4 book ai didi

java - 我需要用 Java 编写一个程序,在其中打印网站上的某些内容(如标题),但我需要取出标签

转载 作者:行者123 更新时间:2023-12-01 04:16:02 26 4
gpt4 key购买 nike

我遇到的主要问题是从网站解析到我的程序。我用它打印了源代码。另外,如果它不包含“http://”,我需要添加它。我真的不明白如何解析字符串。

import java.net.*; 
import java.io.*;
import java.util.Scanner;
public class Project6 {
public static void main (String [] args) throws Exception {

Scanner sc = new Scanner(System.in);
System.out.print("Please enter the URL. ");
String web= sc.nextLine();
String foo = "http://allrecipes.com/";


//is "web" have an allrecipes.com url?
//if it doesn't, then exit
if ( web.equals(foo)) {
StringBuilder s = new StringBuilder();
URL recipes = new URL (web);
BufferedReader in = new BufferedReader(new InputStreamReader(recipes.openStream()));

String inputLine;

while ((inputLine = in.readLine ())!= null)
System.out.println(inputLine);
in.close();

}
else {
System.out.println("I'm sorry, but that is not a valid allrecipes.com URL.");
System.exit(0);
//does "web" start with "http://"
//if it doesn't, add it
}

最佳答案

自己解析 HTML 并不是一个好主意。我建议使用 jsoup库,它确实有助于解析和选择元素。

使用 jsoup 时,您的代码可能如下所示:

Document doc = Jsoup.connect(web).get();
Elements title = doc.select("title");

它简洁、可读,如果需要,您可以轻松解析/选择其他元素(例如,更复杂的 css 选择器,如 #recipes > div #recipe-title)

关于java - 我需要用 Java 编写一个程序,在其中打印网站上的某些内容(如标题),但我需要取出标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19444284/

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