从HTML Java提取文本
我正在开发一个程序,该程序可以下载HTML页面,然后选择一些信息并将其写入另一个文件。
我想提取段落标签之间的信息,但是我只能获得段落的一行。我的代码如下:
FileReader fileReader = new FileReader(file);BufferedReader buffRd = new BufferedReader(fileReader);
BufferedWriter out = new BufferedWriter(new FileWriter(newFile.txt));
String s;
while ((s = br.readLine()) !=null) {
    if(s.contains("<p>")) {
        try {
            out.write(s);
        } catch (IOException e) {
        }
    }
}
我试图添加另一个while循环,这样可以告诉程序继续写入文件,直到该行包含该
标记为止;while ((s = br.readLine()) !=null) {    if(s.contains("<p>")) {
        while(!s.contains("</p>") {
            try {
                out.write(s);
            } catch (IOException e) {
            }
        }
    }
}
但这是行不通的。有人可以帮忙。
回答:
so
我真正喜欢使用的另一个html解析器是jsoup。您可以
在2行代码中获得所有元素。
Document doc = Jsoup.connect("http://en.wikipedia.org/").get();Elements ps = doc.select("p");
然后再将其写到文件中
out.write(ps.text());  //it will append all of the p elements together in one long string或者,如果您希望它们位于单独的行中,则可以遍历元素并将其分别写出。
以上是 从HTML Java提取文本 的全部内容, 来源链接: utcz.com/qa/426976.html








