通过实现org.xml.sax.helpers.DefaultHandler并为Tika创建ContentHandler,我可以通过重写startElement来解析html文件并获取任何标记及其属性。一般来说,这非常有效(非常好的性能,可以处理大文件)。但是,对于基本标签
<base href="http://www.w3schools.com/images/" target="_blank">
属性始终为null。其他标签的所有属性都可以完美运行。想知道为什么会这样?
@Override
public void startElement(String uri, String local, String name, Attributes attributes) {
if (XHTML.equals(uri)) {
if("base".equals(local)) {
String href = attributes.getValue("", "href"); // always null
System.out.println("base href: " + href);
}
}
}
答案 0 :(得分:0)
由于Tika XHTMLContentHandler doesn't pass attributes of html element
中的已知错误,无法从基本代码获取属性