2011-11-21 32 views
2

我想在java中使用Jsoup分析器来检索元标记(标记名=发生器)。如何找到特定的元标记

Elements metalinks=doc.select("meta"); // meta 

boolean metafound=false; 
for (Element singlemeta : metalinks) 
{ 
    metatagname = singlemeta.attr("abs:name"); 
    metatagcontent = singlemeta.attr("abs:content"); 
    if((metatagname=="Generator")||(metatagname=="generator")||(metatagname=="GENERATOR")){ 
     // this is the tag we want to get value of... 
     metarequired=metatagcontent; 
     metafound=true; 
    } 
} 
if(metafound==false) 
    metarequired="NOT_FOUND"; 

但是我无法正确地提取元GENERATOR标签:

我有下面的代码中给出。

这个标签的一个例子,现在如下:

<meta name="generator" content="Test page" /> 

对于代码的第一行上面给出的,我也尝试下面的代码,但也不能正常工作:

//Elements metalinks= doc.getElementsByTag("meta"); 

如何正确提取元标记?

回答

10

它看起来好像你太复杂了。如果你是从这样简单的事情开始的:

Elements metalinks = doc.select("meta[name=generator]"); 
+3

...如果你想从标签中选择内容,那么'metalinks.select(“content”)。first()。toString()' –

+0

我会尝试你的代码,看看它是怎么回事... – Arvind

+1

@SYLARRR:你错了:http://stackoverflow.com/questions/8296520/how-to-extract-the-content-attribute-of-the -meta-name-generator-tag – BalusC