【发布时间】:2018-02-25 06:01:29
【问题描述】:
我想从 google 结果中提取 sn-ps,我正在使用以下代码来解析 google 结果页面:
Scanner scanner = new Scanner(System.in);
System.out.println("Please enter the search term.");
String searchTerm = scanner.nextLine();
System.out.println("Please enter the number of results. Example: 5 10 20");
int num = scanner.nextInt();
scanner.close();
String searchURL = GOOGLE_SEARCH_URL + "?q="+searchTerm+"&num="+num;
Document doc = Jsoup.connect(searchURL).userAgent("Mozilla/5.0").get();
Elements results = doc.select("//div//div//span[contains(@class, 'st')]/text()");
for (Element result : results) {
String linkText = result.text();
System.out.println("Text::" + linkText );//1000+ ", URL::" + linkHref.substring(6, linkHref.indexOf("&")));
}
它提取结果 url 和标题,问题是 sn-ps 位于“较低级别”的 html 标记中,如附图所示:
那么我该如何提取它们呢?!
【问题讨论】:
-
如果这是java或groovy,添加这个标签(在标签中添加你的语言名称)
-
@Gilles .. 完成
-
你能运行xpath查询吗?
-
@Gilles,我没试过……有用吗?
-
肯定会有用的:)
标签: java html json google-search