java需要在Android Studio中使用Jsoup的帮助
我需要一些帮助从标记为“a”的标签中获取文本。我看过一些教程,但我不确定我做错了什么
爪哇:
`public class doit extends AsyncTask<Void,Void,Void> {
ArrayList<String> dayMenu;
String words;
@Override
protected Void doInBackground(Void... params) {
try {
Document doc = Jsoup.connect("Cant Post URL For Reasons").get();
dayMenu = new ArrayList<String>();
//String monday26 = "ul.vertical.medium-horizontal.menu.item.drilldown ul";
String str = "#MainContent_RptMenuCalendar_RptMenuItems_0_LbtnMenuItems_0 vertical.medium-horizontal.menu.item.drilldown a";
String str1 = "div.is-drilldown a";
String mon26 = "a.MainContent_RptMenuCalendar_RptMenuItems_0_LbtnMenuItems_0 a";
System.out.println(words);
String str2 = "div.is-drilldown a";
int i =0;
Elements temp = doc.select("ul.vertical.medium-horizontal.menu.item.drilldown");
for (Element menuItems : temp) {
i++;
//System.out.println(i + " " + menuItems.getElementsByTag("a").first().text());
dayMenu.add(menuItems.getElementsByTag("li").first().text().toString());
}
words = String.valueOf(i);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
//if ((dayMenu.get(0).length()) > 2)
//System.out.println(words);
//else
for (int i = 0; i < dayMenu.size(); i++){
System.out.println(dayMenu.get(i));
}
System.out.println(words);
}
}`
Html:(The Html) I highlighted the portion I am trying to extract.
# 1 楼答案
这个
这是行不通的。该类是一个字符串而不是多个字符串,您可以一次深入到一个级别。。。这就是它能有效做到的。有关选择器语法的信息,请参见https://jsoup.org/cookbook/extracting-data/dom-navigation
相反,试试下面的方法,你可能会更幸运: