所以我正在尝试为我创建一个更新魔兽世界插件的小程序。我使用jsoup获取特定网站上的链接列表。如何忽略不以.zip结尾的文件/链接?
到目前为止,这是我的链接列表,您可以看到它将打印网站上所有链接的列表。目标是只找到.zip文件(只有两个)。然后下载其中一个。每次更新插件时都会直接下载更改链接,因此我无法下载特定的链接。我每次都需要找到最新版本。
public static void LinkList() {
Document doc;
try {
doc = Jsoup.connect("http://www.tukui.org/dl.php").get();
Elements links = doc.select("a[href]");
for (Element link : links) {
System.out.println("\nlink : " + link.attr("href"));
}
} catch (IOException e) {
e.printStackTrace();
}
}
答案 0 :(得分:2)
您可以使用[attr$=value]
选择器检查attribute
是否以value
结尾
Elements links = doc.select("a[href$=zip]");
演示:
Document doc = Jsoup.connect("http://www.tukui.org/dl.php").get();
Elements links = doc.select("a[href$=zip]");
List<String> list = new ArrayList<>();
for (Element link : links) {
System.out.println("link : " + link.attr("href"));
list.add(link.attr("href"));
}
String[] arr = list.toArray(new String[list.size()]);
System.out.println("array content:" + Arrays.toString(arr));
输出:
link : http://www.tukui.org/downloads/tukui-15.79.zip
link : http://www.tukui.org/downloads/elvui-6.82.zip
link : /client/win/tc2430.zip
array content:[http://www.tukui.org/downloads/tukui-15.79.zip, http://www.tukui.org/downloads/elvui-6.82.zip, /client/win/tc2430.zip]