Еще раз о чтении динамических WEB-страниц

08.02.10

Разработка - Механизмы платформы 1С

    В предлагаемой вашему вниманию обработке реализованы 7 вариантов чтения содержимого динамических WEB - страниц (для 1С-Предприятия 7.7) средствами внешних компонент Parser.dll, ADDIN.dll и FormEx.dll, а в сопутствующей ей статье описаны результаты их применения.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ТестВК
.zip 868,72Kb
88
88 Скачать (1 SM) Купить за 1 850 руб.

Это продолжение статьи Мои опыты чтения динамических 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 динамических), выбрав их адреса из списка.

  1. http://www.smeta-tl.narod.ru/about.html  //Статическая страница моего старого сайта
  2. http://www.vezetmne.ru/auctions/80968658
  3. http://www.vezetmne.ru/rating?top100    
  4. 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С Программист Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

В статье расписаны примеры из жизни использования "Виртуального" работника. Разобраны вопросы, возникающие при работе с ним.

28.11.2021    1837    user707242_Gold_karas    18    

5

Механизмы платформы 1С Программист Платформа 1С v7.7 Абонемент ($m)

Пример построения программного кода для достижения функционала обратных вызовов (call back) во внешних обработках исключительно штатными средствами. Тестировалось на платформе 1с77 релиз 027. Конфигурация значения не имеет.

1 стартмани

06.10.2018    7786    Vortigaunt    5    

11

Механизмы платформы 1С Программист Оперативный учет 7.7 Абонемент ($m)

Когда занимаешься разработкой в среде 1С, редко задумываешься о том, что программным кодом ты работаешь с объектной моделью базы данных, а не с самой базой данных. И что это вообще разные вещи. Ты создаешь объекты: документы и справочники, записываешь их - и в базе данных появляются соответствующие записи. Это настолько привычно, что когда сталкиваешься с нетипичным поведением платформы, первым делом думаешь: надо протестировать базу, она битая. В этой статье я хочу разобрать одну интересную ситуацию, которая как раз демонстрирует такое поведение. Описанная ниже ситуация воспроизводится как в файловом, так и в клиент-серверном (SQL) варианте. Тестировалось на версии платформы 1с77 релиз 027.

1 стартмани

16.05.2018    10461    Vortigaunt    26    

5

Механизмы платформы 1С Программист Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    95898    Serginio    116    

188

Механизмы платформы 1С Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

В 1С 8 наличие картинок товаров предусмотрено изначально, а в 7.7 такого нет. Проблема существует и ее исправляют, но это, как правило, частные случаи, касающиеся, например, печати прайса http://infostart.ru/public/289876/ , показу картинок в справочнике номенклатура http://infostart.ru/public/17125/, файловый менеджер картинок товара http://infostart.ru/public/15239/ или просто конфигурации работы с картинками http://infostart.ru/public/21142/ (не стремился дать полный обзор, поэтому не попавшие не обижайтесь :). Что не устроило – информация разбросана по статьям, необходимость дополнительно напрягаться, чтобы это заработало. Здесь я попытался собрать все «до кучи», а так же дать необходимые ссылки для желающих «копнуть вглубь».

1 стартмани

18.11.2014    44824    95    kitminsk    18    

20

Механизмы платформы 1С Программист Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Если вы используете в работе 1С:Предприятие 8.х, то наверняка знакомы и с замечательной системной процедурой, как ЗаполнитьЗначенияСвойств(). Ее использование помогает значительно упростить написание программного кода в ряде случае, делает его (код) более наглядным и простым. Но что же делать тем, кто до сих пор использует (постоянно или иногда) 1С:Предприятие 7.7?

24.07.2014    24227    tomvlad    5    

14

Механизмы платформы 1С Программист Платформа 1С v7.7 Конфигурации 1cv7 Россия Бесплатно (free)

Позволяет в открытой форме списка, выбора или подбора справочника производить динамическую фильтрацию по набранному наименованию.

02.07.2012    18954    maxpiter    62    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. marsohod 123 01.02.10 15:34 Сейчас в теме
Э-э-э и где же предмет обсуждения?
2. mai 110 01.02.10 16:11 Сейчас в теме
(1) Пропал куда-то :D Загрузил
3. SiAl 76 01.02.10 17:01 Сейчас в теме
(0) Почитай про wget. Если не ошибаюсь, он может html-страницу "тянуть" целиком. Запускает с ключами из командной строки.
4. mai 110 01.02.10 17:03 Сейчас в теме
5. SiAl 76 01.02.10 17:12 Сейчас в теме
(4) http://tm-sidhi.narod.ru/tm/library/tech/wget.html
Вот здесь неплохое описание на русском.
6. mai 110 01.02.10 19:18 Сейчас в теме
7. mai 110 01.02.10 19:47 Сейчас в теме
(5) Попробовал простейшее
wget.exe http://www.vezetmne.ru/rating?top100
Прочиталось, но страница урезана до 330 байт.
9. SiAl 76 01.02.10 20:03 Сейчас в теме
(7) С ключами поиграйся. Я тоже не спец по этой утилите.
8. mai 110 01.02.10 19:53 Сейчас в теме
(5) Статическую страницу и 2 других динамических wget прочитал.
Т.е он ведет себя так же, как и ВК Parser.dll и ADDIN.dll.
10. SiAl 76 01.02.10 20:05 Сейчас в теме
(8) Если не взлетит, то читай документации по объектной модель Internet Explorer-а. скорее всего возможно загрузить и сохранить страницу используя методы этого браузера.
11. Гость 31.07.13 13:43
Я понимаю конечно, что уже больше чем 3 года прошло, но интересует вопрос поборол ты эти ограничения в кол-ве принимаемых байт или нет в V7plus.dll?
Дело в том, что до недавнего времени я не знал об этих ограничениях и пользовался без проблем v7plus пока не переустановил Винду, после этого появились проблемы аналогичные твоим. Вот прошло всего 4 дня и все заработало как прежде, никаких ограничений, страница снова целиком принимается как раньше. Есть подозрение на антивирус, я удалил бесплатный микрософтовский и установил касперского, остальное вроде ничего не менял, может какие то обновление виндовс накатил которые повлияли я не знаю.
12. mai 110 31.07.13 20:40 Сейчас в теме
Оставьте свое сообщение