Вы можете получить данные в раунде другим способом.Jsoup
очень хорош для анализа статического контента, но для динамического контента вам нужно найти другой способ.Если вы внимательно наблюдаете за выполнением вызовов API, то таблица загружается из запроса GET на http://data.bitcoinity.org/chart_data
. Вы можете проанализировать содержимое JSON, чтобы получить данные.Я использую OkHttp3 для извлечения данных.
// Imports required
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import org.json.JSONArray;
import org.json.JSONObject;
public static void main(String[] args) throws IOException {
OkHttpClient okHttpClient = new OkHttpClient();
Request request = new Request.Builder()
.url("http://data.bitcoinity.org/chart_data")
.build();
Response response = okHttpClient.newCall(request).execute();
JSONObject responseBody = new JSONObject(response.body().string());
JSONArray aggregated = responseBody.getJSONObject("data_additional")
.getJSONArray("aggregated");
for (int i = 0; i < aggregated.length(); ++i) {
JSONObject rowInfo = aggregated.getJSONObject(i);
System.out.println(rowInfo.getString("key") + ", " + rowInfo.getDouble("agg") + ", " + rowInfo.getString("share"));
}
}
Приведенный выше код будет генерировать ответ как
bit-x, 128103.3596, 4.39
bitfinex, 788172.829602228, 27.00
bitflyer, 385999.821606005, 13.22
bitstamp, 345652.20203694, 11.84
coinbase, 320228.256592679, 10.97
gemini, 99966.4119466147, 3.42
hitbtc, 222472.499999999, 7.62
itbit, 161030.4573, 5.52
kraken, 287811.61880974, 9.86
others, 179860.514253696, 6.16