Парсинг html страниц с выводом информации через JavaScript с использованием Selenium

Публикация № 1237165 20.05.20

Интеграция - WEB-интеграция

Есть девочки как девочки, есть мальчики как мальчики, есть сайтики как сайтики, но странички их обманщики. В целях сохранить информацию, от автоматизированного сбора, многие ресурсы пытаются защитить ее. Один из таких способов - вывод информации на странице через JavaScript. При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные, и в 1с получаем практически пустую страницу. В статье приведу пример разработки, для парсинга таких страниц, без регистрации и смс.

Подготовка

Для реализации данного парсинга нам необходимо:

0. google chrome. Да, нам нужен браузер, открываться он не будет) Все будет происходить в командной строке, но однако сам браузер нам необходим) Я пользовался хромом, и драйверы качал для него. 

1.  (шутеечка =) ). Проверял на 8.2.19.102, 8.3.15.1656

2. ChromeDriver (искать тут)

3. Python (искать тут

3.1 pyinstaller

3.2 Selenium

4. Скрипт для связки 1с и ChromeDriver . Напишем сами на Python, и скомпилируем в exe(parser.exe).

 

Суть работы такая - запускаем из 1с parser.exe, в параметрах передаем ссылку на страницу  для парсинга, и путь к файлу, в который сохраним нашу страницу, для парсинга из 1с, и еще кое какие данные. Т.е. фактически мы скачаем эту страницу с уже выведенными данными и будем в 1с работать с ее локальной версией.

Рис.1 - Общие шаги

Теперь подробнее

1. Работа парсера была протестированна на 1с 8.2 и 8.3.

Я передаю одну ссылку, и жду в ответ только одну страницу. Это не очень хорошо, так как лучше передавать весь массив ссылок, и обрабатывать их в скрипте, чтобы не вызывать скрипт на каждую страницу. Рассмотрим именно такой вариант. Но и в в таком режиме можно распараллелить работу - пока скрипт скачивает страницу, 1с обрабатывает предыдущий результат. 

 

&НаКлиенте
Перем КаталогРезультата,
НачалоПарсинга,
ИмяФайлаРезультата;

&НаКлиенте
Процедура Парсинг(Команда)
	
	ПередПарсинг();
	
КонецПроцедуры

&НаКлиенте
Процедура ПередПарсинг() 
		
	url = "https://www.mvideo.ru/televizory-i-cifrovoe-tv-1/televizory-65";
	
	НачатьПарсинг(url);
	
	
КонецПроцедуры

&НаКлиенте
Процедура НачатьПарсинг(url)
	
	СкриптПарсинга = "B:\job\parser_site\py\parser.exe"; // Путь до parser.exe
	WebDriver = "C:\chromedriver.exe"; 					// Путь до веб драйвера
	
	КаталогРезультата = КаталогВременныхФайлов();
	ИмяФайлаРезультата = Строка(Новый УникальныйИдентификатор) + "_parserres.html";
	ФайлРезультата = КаталогРезультата + ИмяФайлаРезультата; 
	
	Команда = СкриптПарсинга + " --arurl " + url + " --path " + ФайлРезультата + " --driver ";

	НачалоПарсинга = ТекущаяДата();
	
	КомандаСистемы("""" + Команда + """");
	
	ПодключитьОбработчикОжидания("ПослеПарсингаСтраницы", 1, Истина);
	
КонецПроцедуры

&НаКлиенте
Процедура ПослеПарсингаСтраницы()
	
	МассивФайлов = НайтиФайлы(КаталогРезультата, ИмяФайлаРезультата, Ложь);
	
	Если ТекущаяДата() - НачалоПарсинга > 120 Тогда
		Возврат;
	КонецЕсли;
	
	Если МассивФайлов.Количество() = 0 Тогда
		ПодключитьОбработчикОжидания("ПослеПарсингаСтраницы", 2, Истина);
		Возврат;
	КонецЕсли;
	
	Для Каждого Элемент Из МассивФайлов Цикл
		
		ЧтениеHTML = Новый ЧтениеHTML;
		ЧтениеHTML.ОткрытьФайл(Элемент.ПолноеИмя);
		
		ПостроительDOM = Новый ПостроительDOM;
		ДокументDOM = ПостроительDOM.Прочитать(ЧтениеHTML);
				
	КонецЦикла;	
	
КонецПроцедуры


 

2. WebDriver - это инструмент с открытым исходным кодом для автоматического тестирования веб-приложений во многих браузерах. Он предоставляет возможности для навигации по веб-страницам, ввода данных пользователем, выполнения JavaScript и многого другого. ChromeDriver - это автономный сервер, который реализует  стандарт W3C WebDriver . ChromeDriver доступен для Chrome на Android и Chrome на рабочем столе (Mac, Linux, Windows и ChromeOS). 

Источник

Путь к драйверу передаем в парсер параметром WebDriver.

 

3. Phyton можно скачать с официального сайта, либо установить через пакетный менеджер. Думаю с этим вопросом не возникнет.

3.1 pyinstaller - утилита для компиляции .py в .exe. Установка:

pip install pyinstaller

Если команда pip не найдена, нужно добавить корневую директорию Phyton и деректорию ./Scripts в переменные окружения Path

Рис.2 - Переменные окружения для Python

3.2 Selenium - собственно он будет делать всю грязную работу с js. Установка:

pip install selenium

 

4. Parser.exe

Вот мой примера кода парсинга:

import time
import argparse
from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('headless')
options.add_argument('window-size=1920x1080')
options.add_argument("disable-gpu")

parser = argparse.ArgumentParser()
parser.add_argument('--arurl'   , type=str)
parser.add_argument('--path'    , type=str)
parser.add_argument('--driver'  , type=str)
args = parser.parse_args()

url = args.arurl
path = args.path
PathWebDriver = args.driver

driver = webdriver.Chrome(PathWebDriver, options=options)
driver.get(url)
time.sleep(5)
html_source = driver.page_source

res = open(path, 'w', encoding='utf-8')
res.write(html_source)
res.close()

driver.quit()

Сохраним его с именем parser.py. Чтобы компилировать его в exe необходимо применить для него команду:

pyinstaller parser.py

В папке со скриптом появится distr. И там появится Parser.exe.

 

Собственно его мы и будем запускать из 1С. На этом вроде и все. Надеюсь, ничего не упустил.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. D_astana 109 21.05.20 05:29 Сейчас в теме
Одни защищают, другие ломают :)) Интересный подход. Плюс однозначно.
platonov.e; +1 Ответить
2. anton.fly7 173 21.05.20 07:43 Сейчас в теме
Привет!
подскажи пожалуйста, возможно ли достать исходный код ру из pserser.exe ?
rabid_otter; +1 Ответить
3. platonov.e 129 21.05.20 07:49 Сейчас в теме
(2) Привет. Исходный код парсера есть в статье в 4 пункте
4. anton.fly7 173 21.05.20 08:39 Сейчас в теме
(3) я имею ввиду способ достать исходник из ехе, другой программы, созданной инталером
5. platonov.e 129 21.05.20 08:43 Сейчас в теме
(4) Не знаю, не углублялся в такие вопросы.
6. Yashazz 4506 21.05.20 13:51 Сейчас в теме
Криво, извратно и не прикольно. С тем же успехом можно плагины Оперы использовать, Драгонфлай ту же.
Опираться в работе на левую внешнюю утилиту - покупать кота в мешке.
7. platonov.e 129 21.05.20 14:25 Сейчас в теме
(6) Извратно и не прикольно ок) А что кривого?) Пример? Он не доносит идею?)
А опираться в работе на любую скачанную, с того же инфостарта, обработку или любую бесплатную утилиту - тоже ведь кот в мешке) И тем не менее много людей этим пользуются, даже опенсорс проекты создают) Так что здесь такого?)
13. Yashazz 4506 21.05.20 15:48 Сейчас в теме
(7) Концепция скрещения ежа с ужом кривая. 1С тем и ценна, что это единая механика на единой платформе, и вендор гарантирует единообразную работу, соответствующую ожиданиям разраба, в большинстве условий. Про 1С известны требования, ограничения, поведение. Сторонняя утилита - всегда фактор "икс", всегда риск. Идея идеей, но есть штатная эксплуатация и поддержка, и там свои нюансы. Поэтому любая с ИС - это та же 1С, риски гораздо ниже, а не-пойми-откуда взятый экзешник, имхо, очевидно более проблемная штука. Так что не путайте тёплое с мягким.

Скажем так - когда вы воплотите идею, сделаете проект, а через полгода в самый неподходящий момент сторонняя утилита перестанет работать - вы познаете мощность удара этих граблей)

Если кому не очевидно: а) никто не предугадает поведения утилиты в разных условиях сети, софта, харда, инфраструктуры; б) малое количество накопленных и доступных знаний по утилите, т.к. не ширпотреб; в) при изменениях ситуации её придётся допиливать, при сбоях чинить, а это нужны навыки сверх 1С. Вывод - нафиг надо.
14. platonov.e 129 21.05.20 16:19 Сейчас в теме
(13) Концепция скрещивания ежа с ужом, порождает то, что не могли сделать еж с ежем) То, что не может сделать 1с, может сделать другая утилита, и пользоваться этим, "кривым" порождением иногда приходится) Знаете как сделать это средствами 1с, не выходя за рамки? Поделитесь? Я последнее время слышу потребность в этом, я нашел выход и поделился идеей с другими)

Можно пойти на риск и взять имеющиеся утилиты, можно разработать свою) Можно купить УНФ, а можно разработать свою. Это все вопрос выбора) Вряд ли те, кто покупал УПП, или КА 1.1 году в 2012, думал, что к концу десятилетия придется покупать другую конфигурацию. И что, они оказались застрахованные на всегда?) А ведь эти конфигурации не из дешевых. И даже в этих конфигурациях куча багов, что никто не предугадает их поведения, с исходным открытым кодом. Допиливать самому или писать в поддержку при наличии ИТС?) Допиливать самому - тратить трудозатраты компании за то, что уже заплатили. Тогда получается все нафиг) И в чем эта философия?
Ну мы что то уже далеко углубились)
chemezov; +1 Ответить
15. Yashazz 4506 21.05.20 19:08 Сейчас в теме
(14)
Знаете как сделать это средствами 1с, не выходя за рамки?
Ну если навскидку, то внутри самой 1С средствами WebKit, или действительно хттп-запросами поиграться. Делал, работало.
8. rusmil 256 21.05.20 14:28 Сейчас в теме
При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные
А что если просто добавить задержку например 5 секунд, html страница загрузится и потом уже ее парсить? Можете привести пример сайта где такой фокус не пройдет?
9. platonov.e 129 21.05.20 14:31 Сейчас в теме
(8) Попробуйте, хз как http запрос будет держать паузу) Может получится, буду рад если расскажите, такое не сразу гуглится)
Пример сайта есть в статье, мвидио.
11. утюгчеловек 37 21.05.20 14:38 Сейчас в теме
(9) Я делал через WebDriverWait, https://selenium-python.readthedocs.io/waits.html#explicit-waits, но у меня было точно известно чего нужно дожидаться
10. утюгчеловек 37 21.05.20 14:35 Сейчас в теме
Хорошая и жизненная тема, но статья ведь совсем не про 1С.

Не понятно зачем отдавать сырой результат в 1С. Раз ты уже умеешь в парсинг на питоне и уже получил страницу в него - сделай всю грязную работу там и отдай в 1С готовые циферки/буковки. Или я ошибаюсь?
12. platonov.e 129 21.05.20 15:28 Сейчас в теме
(10) Да, конечно можно все сделать в скрипте, можно сделать как хочешь, как видит художник)
Скрипт собирался из комментариев на stackoverflow)) Мне проще было передать сырой результат в 1с, и там работать с ним) Я пытался донести идею как это можно сделать, а каждый уже заточит как ему удобно)
16. starik-2005 2829 22.05.20 15:05 Сейчас в теме
Питон - нормально, только не понятно, зачем компиляция? 99% времени все-равно тратится на ожидание страницы. Я так понимаю, что компиляция нужна, чтобы не ставить на комп питон, так все-равно вызываете его "py скрипт.exe ..."? Так еще и гугловский механизм все-равно придется ставить.

ПОсмотрел сайт MVideo - да, с наскока там не разобраться, т.к. очень мудрено все. Как я понял, скрипт дергает виджеты и вставляет их в контейнеры, поэтому постобработка полностью полученной страницы - вполне нормально. В части скриптов есть сеттаймаут на 1500 мс, так что, полагаю, пятисекундное ожидание может решать вопрос без дополнительных танцев с бубном.
iulyus; platonov.e; +2 Ответить
17. ITSun 25.07.20 22:37 Сейчас в теме
Полезная статья, парсинг на python, но самое главное, что стэк технологий затрагивается.
Плюс однозначно! :)
18. Ibrogim 1289 26.07.20 15:07 Сейчас в теме
(0)
При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные

у мвидио хотябы загружается в итоге код страницы.
т.е. исходный html можно узреть
main_page = driver.page_source
print(main_page)


А как быть например с такой страницей? может есть идеи ?
19. platonov.e 129 26.07.20 16:13 Сейчас в теме
21. Ibrogim 1289 26.07.20 16:14 Сейчас в теме
(19) Просто странная страница. если в хроме попробовать получить её код, то там нет ничего почти...
22. Ibrogim 1289 26.07.20 16:15 Сейчас в теме
(21) Но вебдрайвер селениума умудрился код страницы получить. Странно
20. Ibrogim 1289 26.07.20 16:13 Сейчас в теме
(18) вопрос снимается более долгий sleep помог
platonov.e; +1 Ответить
23. Ibrogim 1289 07.08.20 13:09 Сейчас в теме
я решил свою задачу с помощью Селениума, однако потом сделал её с помощью типового поля ХТМЛ документа. Суть описана тут https://infostart.ru/1c/articles/1269023

Как мне кажется второй способ куда органичней и быстрей, Автор, что вы об этом думаете?
24. platonov.e 129 07.08.20 13:25 Сейчас в теме
(23) Вероятно, это хороший вариант, для платформ которые поддерживают webkit))
На счет ограничений и скорости не могу чего то сказать. В работе через вебкит, мы наверняка знаем, когда отработает js, в селениуме же мы ожидаем какое то время, чтобы проверить результат. Возможно из за этого, в вебките будет быстрей работать)
25. Ibrogim 1289 07.08.20 16:41 Сейчас в теме
(24)
webkit

я думаю что тут не обязателен webkit учитывая то, что по той же технологии создана публикация https://infostart.ru/public/104630/ от 12 аж года.

На самом деле даже в вебкит в событии ДокументСформирован() часто ещё не все элементы существуют. и приходится делать слип, например как на скриншоте
Прикрепленные файлы:
Оставьте свое сообщение

См. также

Что делать, когда методы объекта ПолеHTMLДокумента.Документ (УФ) недоступны?

WEB-интеграция Управляемые формы 8.3.14 Бесплатно (free)

Начиная с версии 8.3.14 некорректно загружаются некоторые веб-страницы в поле HTML-документа на УФ - методы ПолеHTMLДокумента.Документ недоступны. Методом "научного втыка" удалось обойти этот глюк системы.

27.02.2023    534    romasna    2    

8

Подробная настройка работы с сервисом 1С:Сверка

WEB-интеграция Анализ учета Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье будет описано, что такое сервис 1С:Сверка, для каких целей он необходим и как его корректно настроить, а именно: подключать 1С сервис, привязывать к нему электронную почту, отправлять запросы поставщикам, получать от них ответы, сверять данные, а также отвечать и писать клиентам.

19.01.2023    725    Koder_Line    0    

0

Пагинация в 1С

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Те, кому приходилось делать REST API на базе HTTP-сервисов 1С, могли в какой-то момент столкнуться с необходимостью разработки методов, которые позволяли бы возвращать данные с пагинацией, т.е. последовательными порциями. В языках общего назначения пагинация реализуется простым использованием операторов OFFSET и LIMIT в SQL-запросе к базе данных. В языке запросов 1С оператора OFFSET нет, поэтому всем приходится решать эту задачу обходными способами. Один из таких обходных способов представлен в этой статье.

09.01.2023    2733    aleksei_adamov    36    

21

1С бакэнд (каталог товаров)

WEB-интеграция Платформа 1С v8.3 1С:Розница 2 Россия Бесплатно (free)

Серверная часть на 1с8 для веб каталога. Попробую поделиться опытом, как я использовал 1С в качестве веб сервера для веб витрины.

01.01.2023    1547    aldar    7    

20

Новый SimpleWEB – тот же Simple, теперь еще web

WEB-интеграция Мобильная разработка Мобильная платформа Бесплатно (free)

Представляю новый отдельный проект на старой семантике – фремйворк для создания веб приложений. Для разработчика симпла ничего не меняется – все тот же стек разработки, тот же конфигуратор и принципы разработки, но конфигурации теперь можно запускать не только на Андроид, но и в виде веб – приложений. Т.е. теперь платформы две – мобильная и веб, в два раза больше поводов перейти на этот стек разработки. Проект пока на стадии альфы, но развивается.

19.12.2022    2830    informa1555    9    

39

Возможности доработки выгрузки из 1С в Битрикс

WEB-интеграция Платформа 1С v8.3 Управленческий учет Бесплатно (free)

В статье собраны некоторые полезные и интересные примеры доработок выгрузки из 1С на сайты на платформе Битрикс (Возможно, что-то подойдёт и для WordPress и других платформ, принимающих типовую выгрузку на сайт из 1С). Доработки рассмотрены без привязки к конкретным конфигурациям, примеры кода взяты в основном из доработок УТ 10 и 11. Некоторые доработки требуют изменений на стороне Битрикса, некоторые укладываются в типовой функционал. Примеры взяты из личного опыта, возможно, описание где-то не полное, т.к. доработки делались в разное время. Если материал будет интересен или будут аналогичные актуальные задачи, буду стараться дополнять статью более подробным описанием и примерами.

01.11.2022    1441    de0nis    2    

13

Реализация нестандартных (для 1С) интерфейсных решений в Web-клиенте

WEB-интеграция Идеи и тренды в разработке Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Онлайн-сервисы, построенные на 1С, могут использовать все многообразие веб-технологий. О том, как спроектировать, реализовать и красиво оформить интерфейс продукта 1С, в докладе на конференции Infostart Event 2021 Post-Apocalypse рассказал CTO компании WiseAdvice Олег Филиппов.

21.10.2022    7094    comol    15    

70

Rest API от чайника для чайников

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На написание статьи побудило чтение книги "Технологии интеграции "1С:Предприятия 8.3"" Хрусталевой Е.Ю. В первой главе там постоянно чередуются слова REST, REST-интерфейс, архитектура REST и т.д. Мне стало интересно, я начал копать, что это такое, и тема оказалась достаточно интересной.

06.06.2022    14468    zeltyr    2    

11

Модуль переводов и платежей QIWI

Розничная торговля WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 Россия Бесплатно (free)

Инструкция по установке и работе "Модуля переводов и платежей QIWI" для УТ11.4. Публикация создана с целью размещения актуальной онлайн инструкции по работе пользователей с функционалом оформления платежей или переводов КИВИ через РМК в УТ11.4, а также для описания установки модуля в УТ 11.4 и размещения необходимых библиотек dll.

03.06.2022    758    Rastopchinss    5    

2

Загрузка выпусков подкаста Радио 1С Энтерпрайз

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Код для загрузки всех выпусков подкаста Радио 1С Энтерпрайз для оффлайн-прослушивания.

29.04.2022    1231    q_i    9    

16

УПП: Ошибка при взаимодействии с ФСС

Регламентированный учет и отчетность WEB-интеграция Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

При обновлении релиза УПП до 1.3.178.2 пользователи начали жаловаться, что не отправляются в ФСС документы "Ответ на запрос ФСС для расчета пособия" и "Сведения о застрахованных лицах, ФСС". В статье предложен вариант обхода данной ошибки, возможно, это кому-то поможет.

28.04.2022    1531    alex_bob    8    

3

Методика интеграции HTML редакторов в поле HTML документа базы 1С

WEB-интеграция Платформа 1С v8.3 Платформа 1C v8.2 Бесплатно (free)

В статье описаны критерии WYSIWYG HTML редакторов и общая картина интеграции с платформенными механизмами. На момент платформы 1С 8.3 и возможно для будущих релизов описание будет скорее всего актуально. Апробировано на 1С 8.3.20 и 8.2.12, а также на мобильной платформе 8.3.19.59.

12.04.2022    1940    user1206119    2    

13

Создание кодогенератора для Postman

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Опишу порядок разработки кодогенератора для Postman c использованием OneScript и HTTPКоннектор.

13.03.2022    1550    malikov_pro    2    

9

Как из 1С отдать миллионы строк в BI и успеть это сделать быстро

Консолидация данных Анализ и проектирование ИТ-систем WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На онлайн-митапе «Бизнес-анализ по данным базы 1С. Интеграция c платформами BI» выступил ведущий разработчик WiseAdvice.tech Дмитрий Фурцев. Дмитрий рассказал о том, как отдать миллионы строк из 1С в платформу бизнес-аналитики и не потратить на это сутки.

14.02.2022    5363    Fudj1k    11    

22

Передача сообщений из 1С в MS Teams

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример организации уведомлений в канал MS Teams.

09.02.2022    2303    Alex_YAM    4    

24

Работа с 1С через протокол OData

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В данной статье мы будем рассматривать работу с данными информационной базы через протокол OData (далее OData).

17.12.2021    34820    ProgrammingStore    27    

87

Подключение к HTTP-сервису с авторизацией посредством передачи клиентского SSL-сертификата

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

В статье хочу поделиться опытом настройки подключения 1С к стороннему HTTP-сервису, использующему авторизацию посредством передачи клиентского SSL-сертификата.

07.12.2021    11445    kholkin    12    

106

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С (Часть 2)

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Это вторая часть цикла статей, посвящённых типовому модулю интеграции 1С Предприятия и Битрикс24. Цель данной части: рассмотреть тонкости, связанные с обменом товарами и сопутствующими сущностями (спойлер - единицы измерения и свойства товаров). Также затронем некоторые нюансы связи сущностей 1С и Б24 (относящиеся не только к товарам) и их побочное влияние при переносе данных из модуля в модуль (при смене конфигурации, переустановки или обновлении модуля).

27.11.2021    9171    freegman74    16    

19

Web консоль управления сеансами 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Мы дали ему название adm1c, он позволяет посредством веб доступа удалять или смотреть на сеансы в 1С базах и при необходимости удалять их. Да и что тут такого, сказали бы, есть же консоль на win, с нее же это можно делать, и все верно, но есть пара но.

26.11.2021    3154    4ernuy    16    

28

Реализация перевода текста средствами Azure

WEB-интеграция Локализация решений Платформа 1С v8.3 Россия Бесплатно (free)

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

19.11.2021    764    user1559835    2    

4

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Цель статьи - указать на подводные камни и нюансы, о которых “не пишут на заборах” и которые встретились мне за время внедрения типового модуля интеграции 1С и Битрикс24. Будет интересна для людей, кто подумывает о том, чтобы настроить интеграцию, и хотят понять, с чем столкнутся. А также для тех, кто уже работает с подобным обменом, столкнулся с какими-то из описанных ситуаций и хочет понять, что пошло не так и “как жить дальше”. Постараюсь все описать “человеческим” языком с минимальной долей терминов, так как статья, надеюсь, будет полезна не только программистам.

07.11.2021    12939    freegman74    13    

37

Окей, Google

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Пример интеграции Google Ассистента с 1С. В основе которого лежит платформа Dialogflow CX для понимания естественного языка.

28.10.2021    2176    Soloist    6    

29

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB-интеграция HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    4924    sorter1    3    

47

WEB/HTTP сервисы. Базовые отличия и применение на практике

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    29957    Neti    23    

114

Быстрое чтение составных http сообщений multipart/form-data

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Алгоритм быстрого разбора составного http сообщения multipart/form-data.

26.09.2021    3127    cherkasovvitalik    4    

56

Интеграция 1С с Битрикс24 через вебхуки

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Пример получения токена и http запрос к API битрикса.

15.09.2021    9751    TyurinArt    11    

32

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Потребовалось отправить картинку в теле запроса в HTTP сервис методом POST, куча реализаций, но есть маленькие нюансы, если хотя бы кому-то поможет, то уже это было не напрасно.

07.09.2021    11377    ix5s    25    

67

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Все чаще разработчики склоняются к использованию 1C в качестве бэкенда при разработке веб-приложений. Но благодаря встраиванию веб-клиента 1С в сайт можно получить еще больше готовой функциональности. О том, как реализовать гибридное приложение за счет связки 1С с другими веб-технологиями, рассказал разработчик компании Neti Эльдар Мингалиев.

06.09.2021    5290    Бэнни    12    

51

Работа с WEB-сервисами под HTTPS на примере прямого обмена между базами (1С – 1С) 

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Использование веб-сервисов 1С при обмене 1С – 1С позволяет быстро передавать достаточно большие объемы данных из базы-источника в базу-приемник в объектах языка 1С. Данный метод обмена может применяться при бесшовной интеграции между двумя базами 1С, но требует определенной серверной инфраструктуры (установленного и настроенного WEB-сервера).

03.09.2021    12238    UltraUnion2005    9    

35

Умная маршрутизация: о сложностях интеграции с 1С (часть 2)

WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 Бесплатно (free)

В статье будет много примеров кода с комментариями работы расширения для обмена данными УТ11.4 с Яндекс.Маршрутизацией через выгрузку/загрузку EXCEL файла.

27.08.2021    2841    greencactus    7    

18

Гарри Поттер и подкапотное пространство веб-клиента

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

При разработке сайтов, интегрированных с 1С через HTTP-сервисы, приходится бороться с кодировками, искать производительные интерфейсные решения и задумываться над безопасностью. В ходе онлайн-митапа «Web-клиенты для 1С» Юрий Лазаренко показал на практике, как работает магия самодельного веб-клиента и как решать проблемы, возникающие при интеграции.

20.08.2021    5796    TitanLuchs    19    

41

Умная маршрутизация: кейс интеграции с 1С (часть 1)

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

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

18.08.2021    6648    greencactus    42    

61

Сравнительный анализ вариантов интеграции между системами

Файловый обмен (TXT, XML, DBF), FTP WEB-интеграция Внешние источники данных Платформа 1С v8.3 Бесплатно (free)

На Infostart Meetup «Интеграционные решения для 1С» выступил Сергей Наумов – руководитель центра аналитики и консалтинга WiseAdvice. Сергей поделился с коллегами кейсами из собственной практики: какие интеграционные решения остаются актуальными до сих пор, а каких приемов стоит избегать – даже в безвыходных ситуациях.

30.07.2021    4528    SergeyN    1    

10

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика (Украина)

WEB-интеграция Платформа 1С v8.3 Украина Бесплатно (free)

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика, Украина. Тестирование проводил на 1С:Предприятие 8.3 (8.3.10.2561).

28.07.2021    3362    Pervuy    5    

5

Доработка в расширении Яндекс маркета (скачать все этикетки)

WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Бесплатно (free)

Доработка кнопки "Скачать все этикетки" - выбрали каталог и сохранили все за один раз, а не 100500 раз нажимаем кнопку сохранить.

08.07.2021    1435    rst_filippov    1    

2

Пример организации HTTP сервиса на 1С: Документооборот. Источник 1С: ЕРП => Приемник 1С: Документооборот

WEB-интеграция Платформа 1С v8.3 1С:Документооборот Бесплатно (free)

Статья - пример для разработчика, как можно, не используя подсистему Интеграция с Документооборотом, управлять процессами, а именно на нашем примере прерывать выполнение процессов в 1С: Документооборот. Используя данный пример, можно организовать http-сервис в любой конфигурации 1С, которая поддерживает механизм HTTP сервисов.

13.05.2021    4541    Flover    4    

24

Настраиваем авторизацию пользователей 1С через Okta

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Чем больше в компании различных конфигураций и сервисов, тем актуальнее становится проблема единой системы авторизации single Sign-On. Его лидером практически безоговорочно считается Okta. Но на просторах интернета очень мало информации про интеграцию 1С с Okta через протокол OpenID Connect. Что ж, настало время восполнить недостающие пробелы и перевернуть эту печальную страницу в вашей истории

30.04.2021    6606    ripreal1    16    

41