我无法使用Jsoup提取网页内容。问题是 - 我得到的比我需要的多!这是网络内容的格式..
<td>
<ul>
<li>
<b>
Title
</b>
contents
<p>
<a href="www.somesite.com"><b>LinkText</b></a>
</p>
</li>
</ul>
</td>
我正在尝试分别提取标题,内容和linkText .. 以LinkText为例并不难。我用这段代码来获取数据
String title = "";
Elements elements;
Document document = Jsoup.connect(url).get();
elements = document.select("td ul li p a");
for (Element e : elements)
title += "\n" + e.text() + "\n\n";
当我尝试使用此代码获取内容时。
String content = "";
Elements elements;
Document document = Jsoup.connect(url).get();
elements = document.select("td ul li");
for (Element e : elements)
content += "\n" + e.text() + "\n\n";
我得到了一切。 (标题,内容,LinkText)。出现这个问题的原因是因为所有这三个项目都在<li>
内。因此它会在每个文本内部进行回溯。所以,我怎样才能将它们作为不同的字符串。我还想获得Link- www.www.somesite.com以及数据..
答案 0 :(得分:4)
根据Jsoup文档,modalPresentationStyle
方法获取所选元素的组合文本和所有其子项。
您应该使用的text()
方法只能获取所选元素所拥有的文本。
回答您的第二个问题:获取ownText()
代码的href
属性:<a>
。
整件事应该如下:
element.attr("href")
请参阅: