Я пытался получить информацию с веб-страницы, в частности, с этого сайта: http://www.ncbi.nlm.nih.gov/pubmed?term=%22pulmonary%20disease%2C%20chronic%20obstructive%22%5BMesh%5D (среди прочих подобных). Я использую пакеты URL и URLConnection для этого. Я пытаюсь получить определенное число с веб-страницы - на этой странице я хочу общее количество статей (16428).
В верхней части страницы написано: «Результаты: от 1 до 20 из 16428», и когда я смотрю на источник страницы вручную, я могу найти это. Тем не менее, когда я пытаюсь использовать соединение Java для получения этого номера из источника страницы, по какой-то причине он получает «863399» вместо «16428».
Код:
URL connection = new URL("http://www.ncbi.nlm.nih.gov/pubmed?term=%22pulmonary%20disease%2C%20chronic%20obstructive%22%5BMesh%5D");
URLConnection yc = connection.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
String html = "";
String inputLine;
while ((inputLine = in.readLine()) != null) html += inputLine;
in.close();
int startMarker = html.indexOf("ncbi_resultcount");
int endMarker = html.indexOf("ncbi_op");
System.out.println(html.substring(startMarker, endMarker));
Когда я запускаю этот код, я получаю:
ncbi_resultcount "content =" 863399 "/>
вместо:
ncbi_resultcount "content =" 16428 "/>
Кто-нибудь знает, почему это / как я могу это исправить?
Спасибо!