Во-первых, вы можете направить поиск по дате с помощью следующего URL:
http://www.nasdaqomxbaltic.com/market/?pg=charts&lang=en&idx_main%5B%5D=OMXBBGI&add_index=OMXBBPI&add_equity=LT0000128266&period=6months&start_d=19&start_m=7&start_y=2011&end_d=19&end_m=1&end_y=2012
, где вы можете указать нужные значения даты для этих параметров:
ex :start_d=19&start_m=7&start_y=2011&end_d=19&end_m=1&end_y=2012
Тогда идея состоит в том, чтобы получить отрендеренную веб-страницу. Здесь вы можете использовать библиотеку Jsoup следующим образом:
Document doc = Jsoup.connect("http://www.nasdaqomxbaltic.com/market/?pg=charts&lang=en&idx_main%5B%5D=OMXBBGI&add_index=OMXBBPI&add_equity=LT0000128266&period=6months&start_d=19&start_m=7&start_y=2011&end_d=19&end_m=1&end_y=2012").get();
Elements csvLinkFiles= doc.select("div.download > a");
int filesCounter = 0;
for (Element link : csvLinkFiles) {
String href = link.attr("href");
URL csvFileLink= new URL(href);
ReadableByteChannel rbc = Channels.newChannel(csvFileLink.openStream());
FileOutputStream fos = new FileOutputStream("csv-file-"+ (++filesCounter) + ".csv");
fos.getChannel().transferFrom(rbc, 0, 1 << 24);
}
Я не уверен насчет кода, но идея здесь.
РЕДАКТИРОВАТЬ:
После выполнения небольшого запроса кажется, что вам нужно выполнить HTTP Get (потому что файл не статичен и возвращается по запросу).
Вот небольшой фрагмент кода, который должен заменить весь код ниже строки URL csvFileLink= new URL(href)
:
GetMethod get = new GetMethod(href);
InputStream in = get.getResponseBodyAsStream();
File file=new File("csv-file-"+ (++filesCounter) + ".csv");
OutputStream out = new FileOutputStream(file);
int read = 0;
byte[] bytes = new byte[1024];
while ((read = inputStream.read(bytes)) != -1) {
out.write(bytes, 0, read);
}
in.close();
out.flush();
out.close();