如何使用Java从网页读取文本?

时间:2015-04-10 23:39:15

标签: java

编辑 - 我之前已经意识到类似的问题,但我发现以前的答案(包括标记为重复的答案)不足。正如问题正文所述。具体来说,我想要1)非jsoup解决方案或2)如何实现jsoup的一些帮助。

我正在学习Java,并且在过去几个小时里一直试图弄清楚如何从网站上阅读显示的文本。我找到了很多解决方案并遇到了所有解决方案。

IOUtils - 我不知道这是否被删除,或者我做错了,但我的导入语句不起作用。以下两个return"包都不存在"错误。

import org.apache.commons.io.IOUtils;
import org.apache.commons.compress.utils.IOUtils;

jsoup - 不知道如何使用它或导入它。绝对是我学习的潜在领域,但我更喜欢使用标准的java解决方案。如果这是我必须走的方向,我想我会想出来。

此代码实际上至少可以运行,但它会返回html而不仅仅是显示的文本。我试着阅读this page,它显示了非常简单的文字但是有如此复杂的代码,我不知道如何从该来源解析它。除非我已经知道我正在寻找什么,否则就会失败。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;

public class ReadTextFromURL {

   public static void main(String[] args) {

      try {

         URL url = new URL("http://www.uniprot.org/uniprot/B5ZC00");

        // read text returned by server
         BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

         String line;
         while ((line = in.readLine()) != null) {
            System.out.println(line);
         }
         in.close();

      }
      catch (MalformedURLException e) {
         System.out.println("Malformed URL: " + e.getMessage());
      }
      catch (IOException e) {
         System.out.println("I/O Error: " + e.getMessage());
      }
   }
}

任何寻求有效和多功能解决方案来阅读网页文字的帮助都将非常感激!

0 个答案:

没有答案