我应该解析一个 html 页面并显示该页面的一些搜索结果,我已经看到了一些进行解析的代码,但它们都对 XML 文件进行解析。我试图将 html 文件转换为 XML 文件来解析它,但它没有用。我的猜测是因为它包含一些 java 脚本。我用谷歌搜索了如何从 HTML 文件中删除 java 脚本,但结果与安全性有关,我不明白我应该做什么。我也在这里搜索过类似的问题,他们提到了一些叫做 Jtidy 和 DeXSS 的东西,但我也没有明白这些应该如何帮助我从 html 页面中删除脚本,以便我可以将其转换为 XML
我用来将 html 转换为 XML 的代码是这样的
InputStream isInHtml =null;
URL url = null;
URLConnection connection =null;
DataInputStream disInHtml =null;
FileOutputStream fosOutHtml =null;
FileWriter fwOutXml =null;
FileReader frInHtml=null;
BufferedWriter bwOutXml =null;
BufferedReader brInHtml=null;
try {
frInHtml = new FileReader("./Lib.html");
brInHtml = new BufferedReader(frInHtml);
SAXBuilder saxBuilder = new SAXBuilder();
Document jdomDocument = saxBuilder.build(brInHtml);
XMLOutputter outputter = new XMLOutputter();
try {
outputter.output(jdomDocument, System.out);
fwOutXml = new FileWriter("./Lib.xml");
bwOutXml = new BufferedWriter(fwOutXml);
outputter.output(jdomDocument, bwOutXml);
System.out.flush();
}
catch (IOException e) {}
}
catch (IOException e) {}
finally {
System.out.flush();
try{
isInHtml.close();
disInHtml.close();
fosOutHtml.flush();
fosOutHtml.getFD().sync();
fosOutHtml.close();
fwOutXml.flush();
fwOutXml.close();
bwOutXml.close();
}
catch(Exception w) {}