Как я парсил сайт

17.05.22

Интеграция - Сайты и интернет-магазины

Получение данных с сайта, сохранение постов, вывод html-документа в табличный документ с обработкой.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Как я парсил сайт:
.cf 94,61Kb ver:1.0
4
4 Скачать (1 SM) Купить за 1 850 руб.

Я никогда по работе не сталкивался с задачами получения данных c сайта или из html-документа. А тут появилась "личная" задача, решил попробовать.

У меня есть сын, после рождения которого мы с супругой по мере возможности писали в блог, расположенный на сайте diary.ru, всё, что с ним и нами происходило. Временной период - 10 лет. И нам захотелось сделать из этого книгу в малотиражной типографии. Сначала супруга вручную начала переносить записи в Ворд, но, во-первых, яжпрограммист - можно же автоматизировать, а во-вторых, хотелось попробовать несколько макетов, а с Вордом это проблематично.

Почитав Инфостарт и другие интернеты, я понял, что общий принцип одинаковый, но из-за того, что каждый сайт по своему уникален, написать более-менее автоматический алгоритм не получится. В конфигурации, которая приложена к публикации, я хотел сделать универсальный механизм с настройкой получаемых данных, но убедившись, что даже на самом сайте можно сделать разные настройки для своего дневника, бросил эту затею и сделал по конкретную разметку. Хотя, универсальность всё же присутствует.

 

 

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

Уже после того, как всё было готово, все записи были в конфигурации, я попробовал спарсить несколько случайных дневников. Если структура не сильно отличается от структуры нашего дневника, парсер работает и для других дневников diary.ru.

При парсинге сохраняется разметка, форматирование (жирный, курсив, offtop), сохраняются картинки.

Для хранения форматированного текста я воспользовался данной статьёй //infostart.ru/public/273123/

Для загрузки картинок идеей из статьи //infostart.ru/public/257266/

Сам парсер построен на объекте ПостроительDOM. Текст процедуры в спойлере. 

 

 

Полученный текст можно отредактировать

 

При выводе содержания постов в табличный документ (для последующего сохранения в pdf, чтобы отправить в типографию), пришлось подгонять текст, чтобы не было разрывов в постах и в картинках. Ну это просто ) Немного сложнее было с форматированием, но решилось заданием цвета и шрифта ячеек через свойства параграфа форматированного документа.

 

 

В итоге имеется конфигурация с парсером дневников сайта diary.ru с сохранением каждого поста в документ с картинками, с возможностью редактирования и выводом постов в табличный документ.

Использовалась платформа 8.3.20.1674.

конфигурация парсер сайт html форматированный документ

См. также

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 2.3. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц. Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер).

20400 руб.

19.12.2023    4804    36    11    

31

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17634    17    21    

16

СБП. Оплата по QR-коду Сайты и интернет-магазины Программист Платформа 1С v8.3 Конфигурации 1cv8 Автомобили, автосервисы Россия Бухгалтерский учет Управленческий учет Платные (руб)

В настоящее время система СБП очень часто стала использоваться в повседневной жизни. Одна из систем интеграции СБП через СБЕР. Данная конфигурация является инструментом интеграции СБП в Альфа Авто. Данная система не просто формирует статический QR, а динамический, а значит, в системе будет привязка и на покупателя, и на документ.

6000 руб.

25.10.2022    6252    32    4    

11

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Россия Платные (руб)

Модуль выгрузки товаров услуг из 1С для сайта "Авито" раздел "Автозагрузка" выполнена в виде обработки. Обработка подходит для конфигураций УТ, УНФ и Розница. Данная обработка позволяет создавать шаблон с объявлениями для "Авито" - "Автозагрузка".

4200 руб.

07.06.2022    17604    48    56    

42

Оптовая торговля Розничная торговля Сайты и интернет-магазины Программист Платформа 1С v8.3 Оперативный учет 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

ВАЖНО: расширения не предназначены для модуля обмена Битрикс 8.х. Полный список ограничений см. ниже в разделе ОГРАНИЧЕНИЯ. Расширение предназначено для выгрузки на сайт Битрикс сопутствующих товаров, аналогов, рекомендованных и прочих связанных товаров.

3600 руб.

25.07.2018    45856    87    81    

95
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Steelvan 306 17.05.22 11:58 Сейчас в теме
Разбор сайтов с применением Chrome devtools. Примеры от kuzkov.info
https://infostart.ru/public/1492489/

Ваш пример сломается на ОСП сайтах (одностраничные приложения), где содержимое отрисовывается в обозревателе динамически.
2. user720820720 28 17.05.22 12:33 Сейчас в теме
(1), спасибо за ссылку.
Конфигурация сделано под конкретный дневник конкретного сайта, ничего больше.
Оставьте свое сообщение