我正在尝试从eBay出售的清单中提取清单的名称和价格。但是,我的以下代码似乎不起作用:
public static void main(String[] args) throws IOException {
Document document = Jsoup.connect("https://www.ebay.com/sch/i.html?_from=R40&_nkw=PSA+10+silver+prizm+rookies&_sacat=0&LH_TitleDesc=0&rt=nc&LH_Sold=1&LH_Complete=1").get();
String index = "li#srp-river-results-listing1";
Elements listings = document.select(index); // Each box contains the deal info
//System.out.println(listings);
String listingName = listings.select("h3.s-item__title s-item__title--has-tags").text();
//for (int j = 0; j < listingName.length() - 1; j++) {
//if(listingName.charAt(j) == '?') {
//System.out.println("This listing is wrong.");
//}
}
System.out.println(listingName);
}
我可以打印清单,但清单名称。我怀疑我输入的名称错误-但我不知道如何解决。如果我更换
String listingName = listings.select("h3.s-item__title s-item__title--has-tags").text();
与
String listingName = listings.text();
它将为我提供
li
元素内的所有文本,这些文本我不需要-我只需要列表的名称和售价。 最佳答案
我只是尝试使用css选择器,并且意识到应该选择"li#srp-river-results-listing1"
而不是"a.s-item__link > h3"
。