Это продолжение статьи Мои опыты чтения динамических WEB-страниц.
К сожалению, с помощью описанных в ней средств мне не удалось добиться решения поставленной задачи — надежного чтения любых динамических WEB-страниц, и я продолжил поиск ее решения с использованием средств чтения данных из интернета, имеющихся в известных мне внешних компонентах (ВК).
Таких ВК у меня нашлось 3:
- Parser.dll,
- Addin.dll
- и V7Plus.dll.
Для проведения опытов сделал небольшую обработку ТестВК.ert (см. скриншот). Предлагаю вам скачать ее и повторить мои опыты. Возможно, вы знаете другие dll и варианты, найдете ошибки в кодах или в выводах и положениях статьи. Сообщите мне о них, я буду очень благодарен.
Чтобы ТестВК.ert без проблем заработала, положите ее и все dll из архива (в том числе и unrar.dll, без нее ADDIN.dll не работает) в папку какой-нибудь конфигурации, откройте эту конфигурацию и запустите ТестВК.ert. Als-файлы можете не копировать, на ваше усмотрение. (Обратите внимание на функцию Таймер. Благодаря коллеге YtrewQwerty она значительно усовершенствована и теперь измеряет временные интервалы с точностью до миллисекунды).
Обработка позволяет выбрать 7 вариантов тестирования методов ВК:
- 1 метод Parser.dll,
- 1 метод Addin.dll,
- 3 метода V7Plus.dll (её метод Получить имеет 3 модификации в зависимости от типа приемника)
- и 2 дополнительных метода V7Plus.dll.
В каждом из вариантов можно прочитать до 4 страниц сайтов (1 статическая и 3 динамических), выбрав их адреса из списка.
- http://www.smeta-tl.narod.ru/about.html //Статическая страница моего старого сайта
- http://www.vezetmne.ru/auctions/80968658
- http://www.vezetmne.ru/rating?top100
- http://www.almazsoft.ru/index.php?option=com_remository&Itemid=34&func=select&id=5
Результат чтения помещается в папку конфигурации в файл с именем вида resBN.htm, где B — вариант, а N — номер адреса в списке.
- Статическая страница быстро и качественно читается всеми ВК во всех вариантах: страница не урезается, кириллица не искажается. Только в варианте 2. Nidan.ПолучитьПоНТТР(ФайлРезультата, Адрес) время чтения почему-то раз в 10 больше, чем в прочих шести.
- Динамические страницы 2 и 4 читаются качественно только ВК Parser.dll и ADDIN.dll в вариантах 1 и 2. ВК V7Plus.dll в вариантах 3 — 7 при чтении урезает страницы до размера от 330 до 970 байт, кириллица не искажается.
- Динамическая страница 3. http://www.vezetmne.ru/rating?top100 не читается качественно ни одной из ВК ни в одном из вариантов: читается быстро, но страница урезается до 330 байт.
Получается, что ВК V7Plus.dll совсем не пригодна для чтения динамических страниц сайтов, а ВК Parser.dll и ADDIN.dll могут читать не все динамические страницы.
Таким образом, надежного чтения любых динамических WEB-страниц из 1С мне не удалось добиться и с помощью ВК.
Но ведь как-то же они браузерами читаются?
Я прикладной программист, занимаюсь разработкой приложений с использованием встроенных инструментов 1С, и все эти опыты делаю только потому, что есть задача, а инструментов для ее решения в 1С нет. В системных вопросах разбираюсь слабо. Поэтому обращаюсь с просьбой к разбирающимся: помогите, пожалуйста, в решении этой задачи.





Э-э-э и где же предмет обсуждения?
(1) Пропал куда-то 😀 Загрузил
(0) Почитай про wget. Если не ошибаюсь, он может html-страницу «тянуть» целиком. Запускает с ключами из командной строки.
(3) Спасибо, посмотрю
(4)
Вот здесь неплохое описание на русском.
(5) Уже читаю
(5) Попробовал простейшее
wget.exe
Прочиталось, но страница урезана до 330 байт.
(5) Статическую страницу и 2 других динамических wget прочитал.
Т.е он ведет себя так же, как и ВК Parser.dll и ADDIN.dll.
(7) С ключами поиграйся. Я тоже не спец по этой утилите.
(8) Если не взлетит, то читай документации по объектной модель Internet Explorer-а. скорее всего возможно загрузить и сохранить страницу используя методы этого браузера.
Я понимаю конечно, что уже больше чем 3 года прошло, но интересует вопрос поборол ты эти ограничения в кол-ве принимаемых байт или нет в V7plus.dll?
Дело в том, что до недавнего времени я не знал об этих ограничениях и пользовался без проблем v7plus пока не переустановил Винду, после этого появились проблемы аналогичные твоим. Вот прошло всего 4 дня и все заработало как прежде, никаких ограничений, страница снова целиком принимается как раньше. Есть подозрение на антивирус, я удалил бесплатный микрософтовский и установил касперского, остальное вроде ничего не менял, может какие то обновление виндовс накатил которые повлияли я не знаю.
Нет, не поборол