Страницы: 1
RSS
Получение данных с сайта. |Скорость|
 
Код
Sub Code1()

With CreateObject("MSXML2.XMLHTTP")
.Open "GET", "http://www.*", False
.Send
Cells(1, 1) = Mid(.responseText, InStr(1, .responseText, "TEXT") , 1)
End With

End Sub
Уважаемые эксперты, подскажите, что влияет на скорость получения данных с помощью данного кода, скорость интернет соединения или кол-во символов вытягиваемых со страницы? можно ли его ускорить или можно получить данные др.способом?

у меня идет цикл на 2000 и более страниц, и вытягивает 1000 символов, скорость интернет соединения 4 Мбит/с, макрос работает примерно 40 минут!
в Application.StatusBar во время работы отображается кол-во просмотренных сайтов, после нескольких сайтов(10-13шт.) Excel зависает, но макрос продолжает работу.

Спасибо.
 
Скорость зависит от того, насколько быстро веб-сервер отдает веб-страницу
(от того, тормозной сайт, или быстрый)
Скорость инета - дело второе (в вашем случае, вряд ли влияет заметно)

Ускорить (более чем на 1-2%) - думаю, никак

PS: есть сайты, где за секунду можно загрузить десятки страниц,
а есть такие, где одна страница грузится несколько секунд
У вас результат - 1 страница в секунду, это нормальный результат (средний), обычно столько средний сайт генерирует страницу
Изменено: Игорь - 30.05.2014 15:32:07
 
Всё понял. Спасибо за ответ!
 
Если данные Вы записываете так же в цикле сразу в ячейки в каждом проходе - то ускорить можно записывая результаты сначала в массив, а потом этот массив выгружать на лист. Ускорит значительно.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
The_Prist, выгрузка данных происходит мгновенно и в данном случае думаю никак не влияет на скорость. прогоняя код F8 заметно, что тормозит на строке
Код
.Send
Получается, что просто долго обращается к странице.

Спасибо за ответы.
 
Цитата
Игорь пишет: Ускорить (более чем на 1-2%) - думаю, никак
на первый взгляд, да. Но можно сделать код асинхронным, чтобы избежать
Цитата
AKSENOV048 пишет: Excel зависает
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
Страницы: 1
Наверх