gpt4 book ai didi

java - 如何通过 Java 将 HTML 存储在另一个文件中

转载 作者:行者123 更新时间:2023-11-28 03:24:03 26 4
gpt4 key购买 nike

嘿伙计们,我想做的是出现一个对话框,输入一个 URL,然后一个文件将存储该 URL 的超链接。

我出现了对话框,但不确定如何将它连接到另一个文件并只保存超链接而不是保存整个 HTML 文件

import java.io.IOException;
import java.net.URL;
import java.util.Scanner;
import javax.swing.JOptionPane;

public class MyCrawler {

public static void main(String[] args) throws IOException {
String name = JOptionPane.showInputDialog("Enter a URL");
String address = "http://";
URL pageLocation = new URL(address);
Scanner in = new Scanner(pageLocation.openStream());
while (in.hasNext()) {
String line = in.next();

if (line.contains("href=\"http://")) {
int from = line.indexOf("\"");
int to = line.lastIndexOf("\"");
System.out.println(line.substring(from + 1, to));
}
}
}
}

我还有另一个单独的文件,它存储 URL oracle 的信息,但它将所有 HTML 信息存储在一个单独的文件中。有谁知道我如何将这 2 个文件连接在一起并只存储文件的超链接?

import java.net.*;
import java.io.*;
import java.util.*;

public class URLReader {

public static void main(String[] args) throws Exception {
URL oracle = new URL("http://www.oracle.com/");
BufferedReader in = new BufferedReader(new InputStreamReader(oracle.openStream()));
BufferedWriter writer = new BufferedWriter(new FileWriter("outputfile.txt"));

String inputLine;
while ((inputLine = in.readLine()) != null) {
try {
writer.write(inputLine);
} catch (IOException e) {
e.printStackTrace();
return;
}
}
in.close();
writer.close();
}
}

最佳答案

您需要将事件处理程序连接到 GUI 中的文本输入框。关注Swing Trail了解更多。

为了下载和解析 HTML,我强烈推荐 JSoup这将使您能够访问 HTML 的各个方面(例如链接)并对它们执行您自己的应用程序逻辑,例如将它们添加到列表然后将列表写入文件。

关于java - 如何通过 Java 将 HTML 存储在另一个文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22381168/

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