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

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

Разработка - Системная интеграция - Интеграция с 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С. На этом вроде и все. Надеюсь, ничего не упустил.

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

Комментарии
В избранное Подписаться на ответы Сортировка: Рейтинг всех уровней
16. starik-2005 2305 22.05.20 15:05 Сейчас в теме
Питон - нормально, только не понятно, зачем компиляция? 99% времени все-равно тратится на ожидание страницы. Я так понимаю, что компиляция нужна, чтобы не ставить на комп питон, так все-равно вызываете его "py скрипт.exe ..."? Так еще и гугловский механизм все-равно придется ставить.

ПОсмотрел сайт MVideo - да, с наскока там не разобраться, т.к. очень мудрено все. Как я понял, скрипт дергает виджеты и вставляет их в контейнеры, поэтому постобработка полностью полученной страницы - вполне нормально. В части скриптов есть сеттаймаут на 1500 мс, так что, полагаю, пятисекундное ожидание может решать вопрос без дополнительных танцев с бубном.
iulyus; platonov.e; +2 Ответить
1. D_astana 102 21.05.20 05:29 Сейчас в теме
Одни защищают, другие ломают :)) Интересный подход. Плюс однозначно.
platonov.e; +1 Ответить
2. anton.fly7 158 21.05.20 07:43 Сейчас в теме
Привет!
подскажи пожалуйста, возможно ли достать исходный код ру из pserser.exe ?
oleganatolievich; +1 Ответить 1
13. Yashazz 3757 21.05.20 15:48 Сейчас в теме
(7) Концепция скрещения ежа с ужом кривая. 1С тем и ценна, что это единая механика на единой платформе, и вендор гарантирует единообразную работу, соответствующую ожиданиям разраба, в большинстве условий. Про 1С известны требования, ограничения, поведение. Сторонняя утилита - всегда фактор "икс", всегда риск. Идея идеей, но есть штатная эксплуатация и поддержка, и там свои нюансы. Поэтому любая с ИС - это та же 1С, риски гораздо ниже, а не-пойми-откуда взятый экзешник, имхо, очевидно более проблемная штука. Так что не путайте тёплое с мягким.

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

Если кому не очевидно: а) никто не предугадает поведения утилиты в разных условиях сети, софта, харда, инфраструктуры; б) малое количество накопленных и доступных знаний по утилите, т.к. не ширпотреб; в) при изменениях ситуации её придётся допиливать, при сбоях чинить, а это нужны навыки сверх 1С. Вывод - нафиг надо.
19. platonov.e 116 26.07.20 16:13 Сейчас в теме
20. Ibrogim 1187 26.07.20 16:13 Сейчас в теме
(18) вопрос снимается более долгий sleep помог
platonov.e; +1 Ответить
3. platonov.e 116 21.05.20 07:49 Сейчас в теме
(2) Привет. Исходный код парсера есть в статье в 4 пункте
4. anton.fly7 158 21.05.20 08:39 Сейчас в теме
(3) я имею ввиду способ достать исходник из ехе, другой программы, созданной инталером
5. platonov.e 116 21.05.20 08:43 Сейчас в теме
(4) Не знаю, не углублялся в такие вопросы.
6. Yashazz 3757 21.05.20 13:51 Сейчас в теме
Криво, извратно и не прикольно. С тем же успехом можно плагины Оперы использовать, Драгонфлай ту же.
Опираться в работе на левую внешнюю утилиту - покупать кота в мешке.
7. platonov.e 116 21.05.20 14:25 Сейчас в теме
(6) Извратно и не прикольно ок) А что кривого?) Пример? Он не доносит идею?)
А опираться в работе на любую скачанную, с того же инфостарта, обработку или любую бесплатную утилиту - тоже ведь кот в мешке) И тем не менее много людей этим пользуются, даже опенсорс проекты создают) Так что здесь такого?)
8. rusmil 234 21.05.20 14:28 Сейчас в теме
При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные
А что если просто добавить задержку например 5 секунд, html страница загрузится и потом уже ее парсить? Можете привести пример сайта где такой фокус не пройдет?
9. platonov.e 116 21.05.20 14:31 Сейчас в теме
(8) Попробуйте, хз как http запрос будет держать паузу) Может получится, буду рад если расскажите, такое не сразу гуглится)
Пример сайта есть в статье, мвидио.
10. утюгчеловек 29 21.05.20 14:35 Сейчас в теме
Хорошая и жизненная тема, но статья ведь совсем не про 1С.

Не понятно зачем отдавать сырой результат в 1С. Раз ты уже умеешь в парсинг на питоне и уже получил страницу в него - сделай всю грязную работу там и отдай в 1С готовые циферки/буковки. Или я ошибаюсь?
11. утюгчеловек 29 21.05.20 14:38 Сейчас в теме
(9) Я делал через WebDriverWait, https://selenium-python.readthedocs.io/waits.html#explicit-waits, но у меня было точно известно чего нужно дожидаться
12. platonov.e 116 21.05.20 15:28 Сейчас в теме
(10) Да, конечно можно все сделать в скрипте, можно сделать как хочешь, как видит художник)
Скрипт собирался из комментариев на stackoverflow)) Мне проще было передать сырой результат в 1с, и там работать с ним) Я пытался донести идею как это можно сделать, а каждый уже заточит как ему удобно)
14. platonov.e 116 21.05.20 16:19 Сейчас в теме
(13) Концепция скрещивания ежа с ужом, порождает то, что не могли сделать еж с ежем) То, что не может сделать 1с, может сделать другая утилита, и пользоваться этим, "кривым" порождением иногда приходится) Знаете как сделать это средствами 1с, не выходя за рамки? Поделитесь? Я последнее время слышу потребность в этом, я нашел выход и поделился идеей с другими)

Можно пойти на риск и взять имеющиеся утилиты, можно разработать свою) Можно купить УНФ, а можно разработать свою. Это все вопрос выбора) Вряд ли те, кто покупал УПП, или КА 1.1 году в 2012, думал, что к концу десятилетия придется покупать другую конфигурацию. И что, они оказались застрахованные на всегда?) А ведь эти конфигурации не из дешевых. И даже в этих конфигурациях куча багов, что никто не предугадает их поведения, с исходным открытым кодом. Допиливать самому или писать в поддержку при наличии ИТС?) Допиливать самому - тратить трудозатраты компании за то, что уже заплатили. Тогда получается все нафиг) И в чем эта философия?
Ну мы что то уже далеко углубились)
15. Yashazz 3757 21.05.20 19:08 Сейчас в теме
(14)
Знаете как сделать это средствами 1с, не выходя за рамки?
Ну если навскидку, то внутри самой 1С средствами WebKit, или действительно хттп-запросами поиграться. Делал, работало.
17. ITSolncev 25.07.20 22:37 Сейчас в теме
Полезная статья, парсинг на python, но самое главное, что стэк технологий затрагивается.
Плюс однозначно! :)
18. Ibrogim 1187 26.07.20 15:07 Сейчас в теме
(0)
При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные

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


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

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

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

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

См. также

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

Практика программирования WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    57084    Serginio    33    

API ОФД-Я разбор документации с примерами

WEB v8 1cv8.cf Россия Бесплатно (free)

Примеры запросов 1С для получения данных с ОФД-Ярус через API.

20.04.2021    357    www76    0    

Работа через сервис 1С-Отчетность нескольких пользователей

Регламентированная отчетность Зарплата WEB v8 v8::СПР ЗУП3.x Россия БУ ФОМС, ПФ, ФСС Бесплатно (free)

Организации, в которых количество сотрудников превышает установленное значение, обязаны отправлять отчетность по телекоммуникационным каналам связи. Это может быть Контур-Экстерн, Такском или любой другой провайдер. Все чаще пользователи 1С используют сервис 1С-отчетность. И все чаще сертификат оформляется на сотрудника отдела кадров или бухгалтерии. В случае, если нужно оформить несколько сертификатов, возникают трудности в версии ЗУП 3.1.14 и более поздних. О том, как с ними справиться, пойдет речь в данной публикации.

05.04.2021    590    keat24    1    

Правила обмена больше не нужны

Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8 Распределенная БД (УРИБ, УРБД) WEB v8 Бесплатно (free)

Есть несколько общепринятых подходов к написанию обмена между 1С-системами, каждый из которых упирается в длительное изучение технологии, мучительную отладку правил конвертации и написание большого количества сервисного кода, в котором потом тяжело разобраться. О принципах работы универсального фреймворка liteExchange, который реализует быстрые обмены между 1С и внешними системами, и берет на себя всю техническую обвязку по стандартному преобразованию данных, на INFOSTART MEETUP Saint Petersburg.Online рассказал Николай Крылов.

17.03.2021    7000    Nikola23    35    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    26640    ruha    21    

Как отправить сообщение Telegram в группу?

WEB v8 Россия Бесплатно (free)

Отправка сообщения в группу Telegram.

01.03.2021    916    kite2    2    

Альфа-Авто 5.0 и современные HTTP сервисы

WEB v8 1cv8.cf Автомобили, автосервисы УУ Бесплатно (free)

Решение, позволяющее программным продуктам, работающим на устаревших версиях платформы 1С (8.2), интегрироваться с современными HTTP сервисами. Решение, интегрированное с HTTP-сервисом программы по расчету компонентов для изготовления ЛКМ, описанное в настоящей статье, успешно работает в одном из автосервисов, работающем на устаревшей платформе и конфигурации Альфа-Авто 5.0.

01.03.2021    619    osivv    1    

Доступ из базы 1С к стандартному интерфейсу Odata базы 1С, в которой заведен пользователь

WEB v8 Россия Бесплатно (free)

Есть база, с пользователем/паролем, нужно подключиться к Odata из другой базы 1С, получить элементы справочника.

24.02.2021    718    user823999    6    

Кэширование COM-соединения. Три способа Промо

Практика программирования Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    42388    YPermitin    41    

Интеграция с API WB (Wildberries). Создание карточки товара (спецификации)

WEB v8 1cv8.cf ИТ-компания Россия Бесплатно (free)

Опыт интеграции с API WB (Wildberries), опыт создания карточки товара, получение токенов API WB.

18.01.2021    11264    jenyavp    43    

HTML редактор/editor (Wysiwyg) для WebKit 1С (CMS, B2B), альтернатива TinyMCE и стандартному ФорматированныйДокумент

WEB Интеграция v8 v8::УФ 1cv8.cf Бесплатно (free)

Suneditor - отличная замена HTML редактору TinyMCE (бесплатному), в публикации с открытым кодом подключим его в 1С с WebKit, скачать HTMLeditor обработку можно бесплатно.

28.12.2020    2309    SizovE    23    

Выгрузка HTML описаний с картинками (Base64) товаров на сайт/интернет-магазин/B2B, разберем регулярное выражение получения тега body, ПолучитьHTML, ФорматированныйДокумент

Практика программирования WEB Универсальные функции v8 v8::УФ 1cv8.cf Бесплатно (free)

Редактор HTML платформы 1С простой и очень удобный для небольших задач, однако ПолучитьHTML возвращает отдельно картинки и отдельно целиком HTML страницу со ссылкой на имена этих картинок, что неудобно для отправки в базу данных сайта/интернет-магазина/веб-приложения/B2B. Разберем на открытом коде, как решить эту проблему, напишем универсальную функцию получения значения любого тега HTML на регулярных выражениях. Бонусом - возможность редактировать теги HTML в текстовом режиме.

24.11.2020    862    SizovE    4    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    30933    anig99    6    

Как сделать интеграцию (обмен) с интернет-магазином? Пошаговый план действий (Часть 1)

WEB v8 1cv8.cf УУ Бесплатно (free)

C 2011 года я занимаюсь интеграцией с интернет-магазинами и за это время, наверное, повидал все. Делал интеграцию как «культурными», так и «экзотическими» способами. Количество магазинов исчисляется сотнями. В этой серии статей я буду делиться своим опытом, а также выкладывать какие-то полезные наработки.

19.11.2020    4834    markbraer    11    

Чтение вложенных свойств Структур Структуры, Соответствий, свойства через точку, разбор JSON

Практика программирования WEB Интеграция Универсальные функции v8 Бесплатно (free)

JSON: {user.device.type} - как получить значение {type}? А если вложенность значительно глубже? Как проверить, что оно заполнено или удалить его - всё это в публикации с открытым кодом и даже без рекурсии. Бонусом разбор дерева значений - ДанныеФормыЭлементДерева, СтрокаДереваЗначений.

17.11.2020    1827    SizovE    2    

Web Dashboard (мобильная и десктопная версия): оптимальная схема организации взаимодействия с зоопарком систем

WEB v8 Бесплатно (free)

Задача: из множества систем (1С:ERP, 1C:CRM, Кронос:WMS, 1С:Розница, 1С:УПП...) оперативно и онлайн осуществлять мониторинг на телефоне/десктопе/планшете/телевизоре бизнес-аналитику в дашборде для директора. Рассмотрим в статье, как правильно интегрировать между собой все базы, какие для этого инструменты использовать.

10.11.2020    7649    SizovE    2    

Отладка модуля ДиадокПро

WEB v8 1cv8.cf Бесплатно (free)

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

30.10.2020    2336    Максим-777    14    

JSON примеры меню B2B web-приложения "Личный кабинет" на движке EDIbot для телефона/десктопа

WEB v8 Бесплатно (free)

Рассмотрим на примерах работу движка EDIbot при организации меню B2B "Личного кабинета" (мобильная версия, версия десктоп) грузовладельца WMS-системы.

29.10.2020    1036    SizovE    0    

Обмен с сайтом посредством Post-запроса, json

WEB v8 1cv8.cf Бесплатно (free)

Задача - передавать на сайт объекты с наименованием и уникальным идентификатором (УИ), которые изменяются в 1С. Также нужно сохранять историю отправленных пакетов.

29.10.2020    4507    John_d    26    

Организация HTTP публикации каталога товаров используя PostgREST

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу порядок установки настройки и использования PostgREST на примере организации каталога товаров.

05.10.2020    1182    malikov_pro    2    

Интеграционная прослойка(middleware) на Golang. Часть 5 - Обмен с 1С через HTTP-сервисы платформы

WEB v8 Бесплатно (free)

В этой статье научим прослойку отправлять данные в 1С, для этого используем HTTP-сервисы платформы. Обменяемся данными с новым справочником Клиенты. Но главное создадим HTTP-сервис для получения сообщений из очереди RabbitMQ.

28.09.2020    1912    dmitry-irk38    4    

Отладка http сервиса

WEB v8 Бесплатно (free)

При разработке http сервиса возникает ситуация, а как протестировать http сервис? Создали мы сервис, настроили шаблоны, передали, если нужно параметры, открываем браузер заполняем строку подключения и БАХ, ошибка. Что делать?

23.09.2020    3158    hpi    10    

Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

WEB v8 1cv8.cf Бесплатно (free)

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

22.09.2020    6307    hpi    7    

Организация данных и вариант обработки для организации обмена с сайтом

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант организации данных и обработки для обмена с сайтом.

22.09.2020    1590    malikov_pro    4    

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

Практика программирования Обмен данными 1С WEB v8 1cv8.cf Бесплатно (free)

В статье показан пример, как реализовать формирование списка документов клиента/пользователя по коду, а затем скачать его (документа) печатную форму по ссылке

18.09.2020    1205    R_o_n_n_y    3    

Формирование HTTP запроса формата multipart/form-data с двоичными данными, используя ПотокВПамяти

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант формирования запроса

11.09.2020    3735    malikov_pro    11    

Ферма приложений на Kubernetes

WEB v8 Бесплатно (free)

При эксплуатации большого количества информационных систем 1С, предоставляющих интернет-сервисы, возникают проблемы, связанные с зависимостью от производительности и стабильности веб-сервера. Как объединить отдельно стоящие веб-сервера с помощью платформы Kubernetes для централизованного мониторинга всех опубликованных интернет-сервисов на конференции Infostart Event 2019 Inception рассказал программист компании BIA Technologies Владимир Кирбаба.

24.08.2020    1863    ComboBoy    1    

Использование шаблонного процессора для формирования HTML страниц

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу использование шаблонного процессора Handlebars запущенного на Node.js

24.08.2020    1764    malikov_pro    26    

Загрузка или обновление файла на яндекс диске через rest-api

Практика программирования Файловые протоколы обмена, FTP WEB v8 Бесплатно (free)

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

12.08.2020    3054    pavelpribytkin96    10    

Самый простой парсинг и обработка веб-страниц в 1С

WEB Универсальные функции v8 1cv8.cf Бесплатно (free)

Рассмотрим самый простой парсинг веб-страниц средствами платформы 1С и еще некоторые полезные приемы работы с веб-страницами.

07.08.2020    8117    YPermitin    22    

Загрузка или обновление файла на гугл диске

Практика программирования Файловые протоколы обмена, FTP WEB v8 1cv8.cf Бесплатно (free)

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

06.08.2020    2140    pavelpribytkin96    6    

Использование Yandex Translate (Яндекс.Переводчик)

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант подключения и использования Yandex Translate.

08.07.2020    5160    malikov_pro    8    

Когда хотим знать IP клиента...

WEB v8 Бесплатно (free)

В процессе разработки web приложения на 1С, и это не шутка))), а пожелание заказчика, возникла ситуации когда понадобилось знать, с какого IP подключался клиент.

03.07.2020    7421    IMihalev    10    

Ограничение доступа к HTTP публикациям 1С сервера используя NGINX

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант ограничения доступа к HTTP публикациям 1С сервера используя NGINX.

02.07.2020    7901    malikov_pro    7    

Структура обработки загрузки цен и остатков поставщика с примерами и комментариями

Внешние источники данных WEB v8 1cv8.cf Россия Бесплатно (free)

В статье опишу структуру обработки по загрузке цен и остатков от поставщика с примерами.

27.06.2020    1973    malikov_pro    0    

Вариант использования документа "Операция по Яндекс.Кассе" для других сервисов по оплате через интернет

WEB v8 1cv8.cf Россия Бесплатно (free)

В статье рассмотрю организацию эквайринга в УТ 11.4 и доработки для создания заказов на оплату к стороннему сервису, как пример Сбербанк.

24.06.2020    1646    malikov_pro    3    

Работа с AliExpress через API

WEB v8 Бесплатно (free)

В публикации опишу подход работы с API AliExpress и примеры кода.

23.06.2020    6973    malikov_pro    24    

История создания успешной системы чат-ботов на 1С

WEB v8 Бесплатно (free)

Использование чат-ботов в мессенджерах позволяет автоматизировать многие сложные бизнес-процессы путем диалога с системой через виртуального собеседника. О том, как создать универсальную систему ботов с бэкендом на 1С, работающую в Telegram, Viber и Facebook Messenger одновременно, на конференции Infostart Event 2019 Inception рассказал программист-фрилансер Константин Гейнрих.

21.05.2020    8754    CyberCerber    15    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Шаг третий, WooCommerce, публикация категорий товаров

WEB v8 1cv8.cf Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции публикации категорий товаров в магазин WooCommerce, с комментариями внутри.

13.05.2020    3970    osivv    3    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Шаг второй, публикация картинок

WEB v8 Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции передачи фото из 1С, с комментариями внутри.

13.05.2020    2596    osivv    0    

Интеграция Camunda BPM и 1С

WEB Интеграция v8 Бесплатно (free)

Быстрый старт. Только практические примеры. Установка, запуск и публикация бизнес-процесса на сервере Camunda BPM. Управление бизнес-процессами из 1С при помощи Camunda REST API.

12.05.2020    5088    zhichkin    30    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Первый шаг

WEB v8 Россия Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции 1С с комментариями внутри.

28.04.2020    6051    osivv    23    

Выразительный Web API

WEB v8 Бесплатно (free)

Теория разработки Web API с ожидаемым поведением, за который не будет стыдно за пределами мира 1С.

27.04.2020    8403    nbeliaev    22    

Хранение статистики публикаций автора сообщества Инфостарт ® (мобильное приложение И ++)

Мобильная разработка WEB v8 1cv8.cf Бесплатно (free)

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

24.04.2020    2536    capitan    15