2015-10-29 2 views
3

Я сделал некоторое исследование об этом и не имел окончательного ответа.Можно ли загрузить только тег HEAD страницы?

Этот вопрос лежит часть пути через него: How can I download only part of a page?

Но опять же, я не хочу, чтобы загрузить только случайную часть страницы, но один из первых тегов, голова.

Возможно ли как-то запросить страницу и передать ее содержимое в буфер и прекратить загрузку (отбрасывание остального), как только вы найдете тег ближе </head>?

EDIT: Добавление материала на страницу само по себе невозможно, так как я хочу вытащить заголовок веб-сайтов в своем приложении.

В качестве параметра указывается http://stackoverflow.com. Вся страница составляет около 240 кб, но если я перестану загружать момент, я нажму </head>, это всего лишь 5kb. Позвольте мне сэкономить около 97% полосы пропускания для этой страницы.

+0

проблема с этим предположит, парень хотел поставить что-то страница, как текущее время или имя пользователя, это изменяет порядок байтов, поэтому очень сложно угадать, в каком диапазоне байтов есть ваша информация, и если страница генерируется asp.net или что-то в этом роде – DreadfulWeather

+0

Да, предоставление байтового диапазона, конечно же, не соответствует плану , Вот почему я подумал, что, может быть, если бы я смог передать результат и прекратить, как только подобрал бы '' ', это может быть хорошим способом сделать это. Теперь остается вопрос: можем ли мы передавать символы страницы? –

ответ

3

Может быть, это достаточно для вас - Откройте URLConnection и чтения из входного потока



    public class test { 
     public static void main(String[] args) throws Exception { 

      URL oracle = new URL("http://www.oracle.com/"); 
      BufferedReader in = new BufferedReader(
        new InputStreamReader(oracle.openStream())); 

      String inputLine; 
      while ((inputLine = in.readLine()) != null){ 
       if(inputLine.contains("</head>")) break; 
       System.out.println(inputLine); 
      } 
      in.close(); 
     } 

    } 

here у вас есть учебник

+0

Вы уверены, что это не загружает всю страницу, а затем передает через загруженный контент? Если да, тогда это правильный ответ! –

+0

Документация гласит, что Httpurlconnection открывает сокет и поток считывает из него. Так что Asnwer, да, он должен скачать только часть сайта. – burovmarley

+0

Ницца, это должно сделать, спасибо! –

Смежные вопросы