繁体   English   中英

从URL中提取HTML

[英]Extract HTML from URL

我正在使用Boilerpipe从url中提取文本,使用以下代码:

URL url = new URL("http://www.example.com/some-location/index.html");
String text = ArticleExtractor.INSTANCE.getText(url);

String text只包含html页面的文本,但我需要从中提取整个html代码。

是否有人使用此库并知道如何提取HTML代码?

您可以查看演示页面以获取有关库的更多信息。

对于像这样简单的事情,你真的不需要一个外部库:

 URL url = new URL("http://www.google.com");
 InputStream is = (InputStream) url.getContent();
 BufferedReader br = new BufferedReader(new InputStreamReader(is));
 String line = null;
 StringBuffer sb = new StringBuffer();
 while((line = br.readLine()) != null){
   sb.append(line);
 }
 String htmlContent = sb.toString();

使用Java 7和Scanner技巧,您可以执行以下操作:

public static String toHtmlString(URL url) throws IOException {
    Objects.requireNonNull(url, "The url cannot be null.");
    try (InputStream is = url.openStream(); Scanner sc = new Scanner(is)) {
        sc.useDelimiter("\\A");
        if (sc.hasNext()) {
            return sc.next();
        } else {
            return null; // or empty
        }
    }
}

只需使用KeepEverythingExtractor而不是ArticleExtractor

但这是错误的工作使用错误的工具。 你想要的只是下载URL的HTML内容(对吗?),而不是提取内容。 那么为什么要使用内容提取器呢?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM