Как захватить данные из потокового финансирования Yahoo? - PullRequest
0 голосов
/ 15 августа 2011

В потоковом финансировании Yahoo для обновления данных используется метод файла, размер которого постоянно увеличивается:

http://uk.finance.yahoo.com/q?s=^FTSE

Могу ли я в любом случае собрать эти данные (я не собираюсь их продавать - хотел бы сделать свой собственный экран любительской торговли)?

Ответы [ 2 ]

0 голосов
/ 16 августа 2011

Вы можете получить HTML и разобрать, что вы хотите.Вот некоторый основной код, использующий клиент Apache:

import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;

public class YahooFinanceScraper {

// HTTP GET the given URL
private static String HttpGET(String url) {

    HttpClient client = new HttpClient();
    GetMethod method = new GetMethod(url);

    int responseCode = 0;
    String responseHTML = null;

    try {
        responseCode = client.executeMethod(method);
        responseHTML = method.getResponseBodyAsString();
    } catch (Exception e) {
        // log me!
    } finally {
        method.releaseConnection();
    }

    return response;
}

String quote(String symbol) {
    String data = "";
    String HTML = HttpGET(YAHOO_FINANCE_QUOTE_URL + symbol);

    // BIG TODO: parse the HTML for whatever data you find interesting

    return data;
}

public static void main(String[] args) {
    YahooFinanceScraper y = new YahooFinanceScraper();
    String data = y.quote("FTSE");
}

static final String YAHOO_FINANCE_QUOTE_URL = "http://finance.yahoo.com/q?s=^";
}
0 голосов
/ 15 августа 2011

Если вы хотите разобрать HTML, я бы порекомендовал Apache Jericho . Но вам лучше найти поток RSS / JSON / XML.

С уважением, Stéphane

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...