Конференция "Сети" » Максимально быстрая загрузка веб-страницы [D7, WinXP]
 
  • сергей (29.09.12 19:20) [0]
    итак, есть задача - быстро скачать веб-страницу для последующий обработки, потребляя при этом минимум трафика. Собственно, я вижу это как по строчное считывание файла. Использованием какого алгоритма/компонента/типа сокетов/библиотеки можно реализовать это как можно быстрее?
  • Цукор5 (29.09.12 23:13) [1]
    Windows Socket. Что может быть быстрее?
  • Edgar_Wine (30.09.12 02:16) [2]
    Что есть "быстрее"? Скачивайте только html, без графики и прочего. Ну вон через тот же TIdHTTP из Indy (как вариант).

    >> Собственно, я вижу это как по строчное считывание файла.

    Это о чём вы сейчас? Или вы с ftp собираетесь?
  • brother © (30.09.12 10:13) [3]
    > Собственно, я вижу это как по строчное считывание файла.

    так не бывает...
    тяни только хтмл...
  • Сергей (30.09.12 12:41) [4]
    я тяну только html.

    почему не бывает? мы, что не можем скачать кусок файла из всего его объема?
  • brother © (30.09.12 12:49) [5]
    накладные расходы будут меньше при файле скачанному за раз, нежели за несколько запросов...
  • brother © (30.09.12 12:52) [6]
    ты определиь
    или
    > быстро скачать веб-страницу

    или

    > потребляя при этом минимум трафика.

    имхо, вместе они не сочитаются...
  • Сергей (30.09.12 13:51) [7]
    хорошо, пусть будет быстро. использование wininet спасет меня? или проще/быстрее другие способы?
  • brother © (30.09.12 15:23) [8]
    имхо, инди будет достаточно...
  • Edgar_Wine (01.10.12 05:50) [9]
    А оно разве медленно работает? Может вы просто медленно "последующе обрабатываете"?

    >> мы, что не можем скачать кусок файла из всего его объема?

    нууу.. Можем. Правда только кратно размеру пакета. Но делать "скачаем 5-ю строку текста из случайной web-страницы" - нельзя, где взять начало и длину строки (не говорю уж о кодировке)?

    Кстати невозможно скачать быстрее чем "отдаёт" сам сервер.
  • Eraser © (01.10.12 20:59) [10]

    > сергей   (29.09.12 19:20) 

    для чего? если не секрет.
  • сергей (01.10.12 23:35) [11]
    парсер нужен взводному!
  • Сергей М. © (02.10.12 21:49) [12]

    > парсер нужен взводному


    Похоже на курс молодого бойца, не ведающего что любой html-контент, даже весьма внушительного размера - в десятки мегабайт, сервер может и волен отдать клиенту всего одной строкой.

    Что ты там при этом собрался "по строчно считывать" и каким образом ты собрался минимизировать трафик - то даже взводному неведомо)
  • Rouse_ © (02.10.12 22:01) [13]

    > сергей   (01.10.12 23:35) [11]
    > парсер нужен взводному!

    Быстро скачать - сокеты, скачать и пропустить этап распаковки буде она присутствовать - WinInet. Построчно считать - а с какой строки читать будем? Ну а парсер - это уже хорошая заявка на соответствующую квалификацию.
  • Edgar_Wine (03.10.12 15:58) [14]
    Сервер может не поддерживать докачку файлов - тогда вообще не получится скачивать с середины.
    Насчёт минимизации трафика - разве что анализировать поступающие данные на лету и при каком-то условии пытаться обрывать скачивание. Впрочем, если известно что нужная информация начинается "не ранее чем с 100 байта текста" - можно пробовать и это использовать. Но это уже какое-то сильно частное решение получится, и при изменении разметки страницы всё грохнется. =)
    И всё же если там какие-то "тормоза" - то скорее при дальнейшей обработке текста.
    Можно всё-таки более конкретно задачу услышать? Какого вида парсер?
  • Edgar_Wine (03.10.12 15:59) [15]
    Бонус! (все события вымышленные, надеюсь никто не обидетса)

    Смеркалось. В помещение бесшумно вошёл взводный. Мягко ступая, плавающей походкою приблизился он к подчинённым:
    - эх... - тяжело и довольно громко вздохнул он.
    Все вздрогнули и резко оглянулись - ведь никто так и не заметил его появления. Таинственно улыбаясь, взводный окинул туманным взглядом присутствующих. Вскоре взгляд сфокусировался на ком-то:
    - Эх, Серёга..... - ещё более тяжко вздохнул он.
    - амм... Шшто? - настороженно поинтересовался тот.
    - А напиши-ка мне парсер! ^_____^
    - О_о
 
Конференция "Сети" » Максимально быстрая загрузка веб-страницы [D7, WinXP]
Есть новые Нет новых   [134435   +20][b:0][p:0.001]