2012-03-31 6 views
3

を使用してメタ記述内容を取得し、これは私が持っているものです。私はタイトルやURLからのmetaタグの記述内容を抽出しようとしていますタイトル、URL

fin[] //urls in a string array 

for (int f = 0; f < fin.length; f++) 
{ 
Document finaldoc = Jsoup.connect(fin[f]).get(); //fin[f] contains url at each instance 
Elements finallink1 = finaldoc.select("title"); 
out.println(finallink1); 
Elements finallink2 = finaldoc.select("meta"); 
out.println(finallink2.attr("name")); 
out.println(fin[f]); //printing url at last 
} 

が、それはタイトルを印刷して、単純にプリントされていませんdescriptionを "description"とし、urlを出力します。

結果:

description plus.google.com generator en.wikipedia.org/wiki/google description earth.google.com

答えて

16

あなたはこれを使用することができます。そして、

String getMetaTag(Document document, String attr) { 
    Elements elements = document.select("meta[name=" + attr + "]"); 
    for (Element element : elements) { 
     final String s = element.attr("content"); 
     if (s != null) return s; 
    } 
    elements = document.select("meta[property=" + attr + "]"); 
    for (Element element : elements) { 
     final String s = element.attr("content"); 
     if (s != null) return s; 
    } 
    return null; 
} 

String title = document.title(); 
String description = getMetaTag(document, "description"); 
if (description == null) { 
    description = getMetaTag(document, "og:description"); 
} 
// and others you need to 
String ogImage = getMetaTag(document, "og:image") 

....

+0

素晴らしい、感謝@Eugene – logan

+6

タイトルはメタタグではなく、jsoupで次のようにアクセスできます: 'document.title()' –

+0

ありがとうございます。答えを更新しました。 –

関連する問題