Tôi đang làm việc trên một chương trình tải xuống các trang HTML và sau đó chọn một số thông tin và ghi nó vào một tệp khác.Trích xuất văn bản từ HTML Java
Tôi muốn trích xuất thông tin nằm giữa các thẻ đoạn, nhưng tôi chỉ có thể lấy một dòng của đoạn văn. Mã của tôi là như sau;
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) {
}
}
}
tôi đã cố gắng để thêm một vòng lặp while, mà sẽ nói với chương trình để tiếp tục viết để nộp cho đến khi dòng chứa thẻ </p>
, bằng cách nói;
while ((s = br.readLine()) !=null) {
if(s.contains("<p>")) {
while(!s.contains("</p>") {
try {
out.write(s);
} catch (IOException e) {
}
}
}
}
Nhưng điều này không hiệu quả. Ai đó có thể vui lòng giúp đỡ.
Chúng tôi chắc chắn đang gặp lỗi trong việc thoát khỏi thẻ HTML của SO. – Yishai
Bạn có trích dẫn chúng dưới dạng mã có dấu gạch chéo ngược không? – pjp
Trình phân tích cú pháp HTML tồn tại và có rất nhiều trình phân tích cú pháp. –