如何从 Java 中的 URL 获取页面标题信息?

Sar*_*rah 1 html java jsp servlets

所以我用 JSP 语言编码,但我需要在 java servlet 中执行此操作。我在 java 程序(servlet)中有一种方法来获取用户输入的 URL。我将 URL 存储在字符串中。现在剩下要做的就是从 URL 或网站获取页面标题信息。本质上我想从 URL 获取 html 代码中的标题标签。我以前从未这样做过,所以我想知道是否有人可以给我任何关于如何做到这一点的指示。

例如,假设我想从http://www.computerhope.com/issues/ch000746.htm获取页面标题

当我查看 html 代码时,它显示它是“如何查看网页的 HTML 源代码”,如 html 代码所示。

<title>如何查看网页的HTML源代码</title>

那么我怎样才能在java程序中访问它呢?

Lah*_*han 6

试试这个。

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Scanner;

public class URLTest {

public static void main(String[] args) {
    InputStream response = null;
    try {
        String url = "http://www.google.com";
        response = new URL(url).openStream();


        Scanner scanner = new Scanner(response);
        String responseBody = scanner.useDelimiter("\\A").next();
        System.out.println(responseBody.substring(responseBody.indexOf("<title>") + 7, responseBody.indexOf("</title>")));

    } catch (IOException ex) {
        ex.printStackTrace();
    } finally {
        try {
            response.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}
}
Run Code Online (Sandbox Code Playgroud)