-1

我目前正在尝试制作一个 Android 应用程序并得出结论,我必须使用 JSOUP 来完成它。我正在使用 JSOUP 从 Internet 中提取数据,然后将其发布到我的应用程序上。

我想弄清楚的是如何从 url 中提取多位数据,然后在他们自己的 XML String TextView 中使用它们中的每一个(如果这是正确的?)

这是我要提取的 HTML 的片段。


a href="http://www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m12296&MI=122&RN=BACoN TURKEY SLICED" OnCick="javascript: NewWindow('http:// www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m12296&MI=122&RN=BACON TURKEY SLICED', 'RDA_window', 'width=450, height=600, scrollbars=no, toolbar=否,目录=否,状态=否,菜单栏=否,copyhistory=no');return false" Class="recipeLink">BACON TURKEY SLICED


我正在尝试提取单词BACON TURKEY SLICED

问题是我根本不懂 JSOUP。就像我对它有一个想法,但我似乎无法实际使用它等等。我想知道是否有人可以尝试推动我朝着正确的方向前进。

另外,我试过阅读食谱,但没有成功。

如果有人可以提供帮助,非常感谢!

编辑

这里还有两个。我相信它们是完全相同的东西。

a href="http://www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m4903&MI=122&RN=STATION OMELET" OnClick="javascript: NewWindow('http://www .campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m4903&MI=122&RN=STATION OMELET', 'RDA_window', 'width=450, height=600, scrollbars=no, toolbar=no,目录=no, status=no, menubar=no, copyhistory=no');return false" Class="recipeLink">STATION OMELET

a href="http://www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m784&MI=122&RN=CEREAL HOT GRITS" OnClick="javascript: NewWindow('http:// www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m784&MI=122&RN=CEREAL HOT GRITS', 'RDA_window', 'width=450, height=600, scrollbars=no, toolbar=否,目录=否,状态=否,菜单栏=否,copyhistory=no');return false" Class="recipeLink">CEREAL HOT GRITS

4

1 回答 1

0

因此,此答案将假设您对以下内容感兴趣:

  • <a href=".." >你想要的文字</a>
  • 所有这些 <a> 标签都有style属性“recipeLink”。

给定你的例子,这里是一个字符串:

String tastyTurkeySandwich= "<a href=\"http://www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m12296&amp;MI=122&amp;RN=BACoN  TURKEY  SLICED\" OnCick=\"javascript: NewWindow('http://www.campusdish.com/en-US/CSMA/OldDominion/Locations/rda.aspx?RCN=m12296&amp;MI=122&amp;RN=BACON  TURKEY  SLICED', 'RDA_window',  'width=450, height=600, scrollbars=no, toolbar=no,  directories=no, status=no, menubar=no, copyhistory=no');return false\" Class=\"recipeLink\">BACON  TURKEY  SLICED</a>";

您可以使用以下代码提取(第一个)文本:

Document doc = Jsoup.parse(tastyTurkeySandwich);
Elements links = doc.select("a[href].recipeLink");
// This will just print the text in the first one
System.out.println(links.first().text());

迭代一个Elements(实现Iterable接口的)实例:

for (Element link : links) {
    // Calling link.text() will return BACON TURKEY SLICED etc. etc.
    System.out.println(link.text());
}

简而言之:

  1. a[href]将匹配所有具有 href 属性的 <a> 标记。
  2. .recipeLink部分将过滤该选择以仅包含具有 recipeLink 样式的链接。
于 2012-06-27T13:46:42.093 回答