Имя: Пароль:
1C
1С v8
"InternetExplorer.Application" - как сохранить страницу с картинками
,
0 Сниф
 
06.09.11
20:23
Подскажите, пожалуйста, как используя объект "InternetExplorer.Application" сохранить веб-страницу с картинками?
1 vudo
 
06.09.11
20:28
Ага, что бы потом голову ломать, как ее загрузить... :)
v8: Можно ли загрузить локальную HTML страницу?
Я пока так и не добился. :(
2 Сниф
 
06.09.11
20:33
(1) тебе отказали в доступе)
сейчас попробовал работает
ЭлементыФормы.ПолеHTMLДокумента.Перейти("C:\@@@\2011_09_06\index.htm");
3 Сниф
 
06.09.11
20:36
ИМХО Элементы.ПолеHTMLДокумента.Документ.URL только для чтения
4 vudo
 
06.09.11
20:41
(2) Для управляемого интерфейса не подходит :(

(3) Для удаленных страниц работает! (mail.ru загрузился)
5 Сниф
 
07.09.11
08:11
апну
6 Сниф
 
07.09.11
10:05
У меня создалось впечатление, что сохранять веб-страницу с картинками может браузер, но не объект "InternetExplorer.Application". Получается, что для решения задачи нужно искать в html все теги <img> и скачивать картинки по одной.
Я правильно понимаю, что это единственный путь?
7 vudo
 
07.09.11
10:41
8 Сниф
 
07.09.11
18:04
up-ну
9 FN
 
07.09.11
18:10
(8) посмотри еще InternetExplorer.Application.ExecWB + OLECMDID_SAVE

но оно по-моему интерактивыне запросы выдает
10 Сниф
 
09.09.11
20:41
(9) гуглил InternetExplorer.Application.ExecWB + OLECMDID_SAVE, но ничего похожего не нашел.
11 vudo
 
09.09.11
20:54
Уже бы парсер написал.
Там делов-то на 30 минут, используя Общие объекты - HTML...
12 Сниф
 
10.09.11
08:53
(11) а уже есть такой парсер. Автор Андрей Данилюк, скачать конфигурацию можно на его блоге  http://danila.org.ua/?p=1061.

Если немного "допилить" конфигурацию, а именно сделать проверку корректности путей к картинкам (окончание .gif, .jpg и т.п.), то все работает. Но очень медленно.

Internet Explorer сохраняет mail.ru за 3 секунды, конфигурация 1С за 3 минуты.
13 vudo
 
10.09.11
09:12
(12) Там сделано через текст, по этому и медленно. А я предлагаю через 1совский объект "HTML"! Должно намного быстрее работать...
14 vudo
 
10.09.11
09:16
(13) + еще через ОбработчикОжидания можно реализовать многопоточность загрузки связанных ссылок (картинок). Еще быстрее грузиться будет...
15 Сниф
 
10.09.11
09:27
vudo
специально прошелся отладчиком
конструкция

HTTPСервис.Получить(ПутьНаСайте, ИмяВременногоФайла);

выполняется 3 секунды (скачивание одной картинки)
Итого 3 секунды Х 60 картинок = 180 секунд.
Процессор загружен на 50%.
Путей оптимизации не вижу.
16 vudo
 
10.09.11
09:39
(15) А если в Обработчике ожидания попробовать, который вызывать 1 раз через 0.1 сек и запускать новый HTTPСервис.Получить(ПутьНаСайте, ИмяВременногоФайла)?
17 FN
 
12.09.11
01:33
18 Сниф
 
20.09.11
21:24
(17) спасибо, отличная ссылка