Jsoup Java doc.select Yahoo Finance

时间:2013-11-26 03:00:25

标签: java web-scraping jsoup yahoo-finance

我理解用于从Yahoo Finance页面检索“股票名称”和“当前股票价格”的Jsoup代码(例如http://finance.yahoo.com/q?s=goog):

String price = doc.select(".time_rtq_ticker").first().text();
String name = doc.select(".title h2").first().text();

但我不确定如何选择其他数据,例如打开:音量:值。

这是我到目前为止所尝试的:

Elements open = doc.getElementsByTag("Open");
Elements volume = doc.getElementsByTag("Volume");

2 个答案:

答案 0 :(得分:1)

您可以从表中获取所有数据,然后将正确的索引作为单独的元素获取:

Elements e = doc.select("td.yfnc_tabledata1");
Element open = e.get(1);   // index for open is 1
Element volume = e.get(9); // index for volume is 9

System.out.println("Open: " + open.text());
System.out.println("Volume: " + volume.text());

将输出:

Open: 1,037.16
Volume: 1,613,009

您无法使用getElementsByTag("Open")getElementsByTag("Volume"),因为这些代码不存在。

答案 1 :(得分:0)

我不确定它是否返回正确的结果,但数据将包含在:

doc.select("span.time_rtq_ticker");
相关问题