我需要动态获取URL的标题和描述。为了做到这一点,我需要使用什么?
以下面的网址为例:http://en.wikipedia.org/wiki/Stack_overflow
我需要提取URL的图块及其描述。你更喜欢jsoup提取如下吗?
url.select("title");
如果是,如何提取网址的描述?
答案 0 :(得分:1)
我认为你需要一个像杰里科这样的HTML解析器。
看看这个例子: http://jericho.htmlparser.net/samples/console/src/ExtractText.java
特别是这两种方法:
private static String getTitle(Source source) {
Element titleElement=source.getFirstElement(HTMLElementName.TITLE);
if (titleElement==null) return null;
// TITLE element never contains other tags so just decode it collapsing whitespace:
return CharacterReference.decodeCollapseWhiteSpace(titleElement.getContent());
}
private static String getMetaValue(Source source, String key) {
for (int pos=0; pos<source.length();) {
StartTag startTag=source.getNextStartTag(pos,"name",key,false);
if (startTag==null) return null;
if (startTag.getName()==HTMLElementName.META)
return startTag.getAttributeValue("content"); // Attribute values are automatically decoded
pos=startTag.getEnd();
}
return null;
}