从HTML Java提取文本

前端之家收集整理的这篇文章主要介绍了从HTML Java提取文本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个下载HTML页面的程序,然后选择一些信息并将其写入另一个文件.

我想提取段落标签之间的int信息,但我只能得到段落的一行.我的代码如下:

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循环,这将告诉程序继续写入文件,直到该行包含< / p>标签,说

while ((s = br.readLine()) !=null) {
    if(s.contains("<p>")) {
        while(!s.contains("</p>") {
            try {
                out.write(s);
            } catch (IOException e) {
            }
        }
    }
}

但这不行.有人可以帮忙.

解决方法

jsoup

我真正喜欢使用的另一个html解析器是jsoup.你可以得到所有的< p>元素在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

或者如果您希望它们在不同的行上,您可以遍历元素并单独写入它们.

原文链接:https://www.f2er.com/html/230840.html

猜你在找的HTML相关文章