また来ました。
私はこのコードを手に入れました:
this.doc = Jsoup.parse(str);
Elements tables = doc.getElementsByTag("table");
if(tables!=null){
for(Element table : tables){
if(table != null){
Elements tds=table.getElementsByTag("td");
if(tds!=null){
for(Element td : tds){
String[] text=td.text().trim().split("\\s+");
if(text.length<2)td.remove();
}
}
}
}
}
Elements hs = doc.getElementsByTag("h1, h2, h3, h4");
if(hs!=null)for(Element h : hs)if(h != null)h.remove();
Elements blocks = doc.getElementsByTag("div, center, li, p, address, aside, audio, blockquote, canvas, dd, dl, fieldset, figcaption, figure, footer, form, header, hr, hgroup, li, ol, noscript, output, pre, section");
if(blocks!=null){
System.out.println(blocks.size());
for(Element block : blocks){
if(block != null){
String[] text=block.text().trim().split("\\s+");
if(text.length<2)block.remove();
}
}
}
Elements pdp = doc.getElementsByClass("pineDeletePoint");
if(pdp!=null&&pdp.size()>0)pdp.remove();
str = this.doc.outerHtml();
ただし、HTML 内に 2 語未満のブロック要素がまだあります。
なぜ私はそれらを削除できないのですか?
助けてくれてどうもありがとう...