如何获取属性内容Jsoup?
How to get attribute content Jsoup?
我有
<meta itemprop="datePublished" content="2015-01-26 12:37:00">
我想 select 内容。我试了没成功:
Document doc = Jsoup.connect("http://www.somesite.com/index.html").get();
Element link= doc.select("meta").first();
String contetn= link.attr("content");
但是在我的 html 我有:
<div style="overflow: visible;" itemscope="" itemtype="http://schema.org/Article">
<meta itemprop="url" content="http://www.somesite.com/index.html">
<meta itemprop="headline" content="some text">
<meta itemprop="datePublished" content="2015-01-26 12:37:00">
<meta itemprop="dateModified" content="2015-01-26 14:03:16">
您可以看到我搜索了 3-td 标签元数据,但 select 搜索不到。
Element link= doc.select("meta").first();
这将 select 仅找到第一个 meta
元素;因为你在第二个 html 中有多个,你会得到错误的结果。
但是这里有一个 例子:
final String html = "<div style=\"overflow: visible;\" itemscope=\"\" itemtype=\"http://schema.org/Article\">\n"
+ "<meta itemprop=\"url\" content=\"http://www.somesite.com/index.html\">\n"
+ "<meta itemprop=\"headline\" content=\"some text\">\n"
+ "<meta itemprop=\"datePublished\" content=\"2015-01-26 12:37:00\">\n"
+ "<meta itemprop=\"dateModified\" content=\"2015-01-26 14:03:16\">";
Document doc = Jsoup.parse(html);
Element meta = doc.select("meta[itemprop=datePublished]").first();
String content = meta.attr("content");
System.out.println(content);
输出: 2015-01-26 12:37:00
这将 select 所有具有属性 itemprop
和属性值 datePublished
的 meta
元素。从所有找到的,只有第一个被拿走。最后,您可以从单个元素中获取 content
属性的值。
我有
<meta itemprop="datePublished" content="2015-01-26 12:37:00">
我想 select 内容。我试了没成功:
Document doc = Jsoup.connect("http://www.somesite.com/index.html").get();
Element link= doc.select("meta").first();
String contetn= link.attr("content");
但是在我的 html 我有:
<div style="overflow: visible;" itemscope="" itemtype="http://schema.org/Article">
<meta itemprop="url" content="http://www.somesite.com/index.html">
<meta itemprop="headline" content="some text">
<meta itemprop="datePublished" content="2015-01-26 12:37:00">
<meta itemprop="dateModified" content="2015-01-26 14:03:16">
您可以看到我搜索了 3-td 标签元数据,但 select 搜索不到。
Element link= doc.select("meta").first();
这将 select 仅找到第一个 meta
元素;因为你在第二个 html 中有多个,你会得到错误的结果。
但是这里有一个 例子:
final String html = "<div style=\"overflow: visible;\" itemscope=\"\" itemtype=\"http://schema.org/Article\">\n"
+ "<meta itemprop=\"url\" content=\"http://www.somesite.com/index.html\">\n"
+ "<meta itemprop=\"headline\" content=\"some text\">\n"
+ "<meta itemprop=\"datePublished\" content=\"2015-01-26 12:37:00\">\n"
+ "<meta itemprop=\"dateModified\" content=\"2015-01-26 14:03:16\">";
Document doc = Jsoup.parse(html);
Element meta = doc.select("meta[itemprop=datePublished]").first();
String content = meta.attr("content");
System.out.println(content);
输出: 2015-01-26 12:37:00
这将 select 所有具有属性 itemprop
和属性值 datePublished
的 meta
元素。从所有找到的,只有第一个被拿走。最后,您可以从单个元素中获取 content
属性的值。