Заказчик – один из ведущих производителей взрывобезопасного оборудования в России, пришел к нам с заданием написать скрипт для обновления информации о товарах на сайте. Данные для обновления должны были загружаться путем парсинга XML-файла, полученного из 1С.
Что мы делалиИз всего списка выполненных задач можно выделить две наиболее сложные:
- Парсинг файлов выгрузки из 1С.
- Оптимизация запросов по поиску артикула, исходя из выбранной комплектации.
Парсинг файлов выгрузки из 1С
Проблема
В этой задаче необходимо было написать скрипт для парсинга XML-файла и на основе полученных данных либо добавлять, либо обновлять товары на сайте. Для каждого товара существует свой отдельный файл с полным описанием свойств товара и огромным количеством различных вариаций его исполнения. Иногда размеры таких файлов доходили до нескольких гигабайт, из-за чего мы не могли парсить файлы обычными средствами, так как объем оперативной памяти на сервере был меньше, чем размеры этих файлов.
Решение
В итоге был написан скрипт для парсинга, который не загружал во время парсинга весь файл целиком и работал с ним по строчкам, что, с одной стороны, усложнило логику, но с другой – позволило парсить файлы любых размеров.
Мы в telegram:
Евгений Сомов @john081076
Анна Сабадаш @TatankaYotanka
Почта
hello@softorium.proТелефоны
+7 (384-2) 32-67-98
+7 913 301-93-90