у меня алгоритм разбит на 2 этапа: 1) периодическое сохранение прайса в html файл с помощью программы offline explorer 2) загрузка прайса в 1с Код: Процедура ЗагрузкаКаталогаSVEN() МассивФайлов = НайтиФайлы("c:\download\www.sven.ru\catalog", "*.htm", истина); Для каждого ЭлементМассива Из МассивФайлов Цикл ЧтениеHTML = Новый ЧтениеHTML; ЧтениеHTML.ОткрытьФайл(ЭлементМассива.ПолноеИмя); Если ЭлементМассива.Путь="c:\download\www.sven.ru\catalog\" // не нужны элементы из корня ИЛИ ЭлементМассива.Путь="c:\download\www.sven.ru\catalog\archive\" // старые модели тоже не нужны //ИЛИ ЭлементМассива.Путь="c:\download\www.sven.ru\catalog\accessory\" // аксессуары тоже не нужны Тогда продолжить; КонецЕсли; ПостроительDOM = Новый ПостроительDOM; ДокументDOM = ПостроительDOM.Прочитать(ЧтениеHTML); ЭлементыHTML = ДокументDOM.ПолучитьЭлементыПоИмени("h1"); ТекСтрока = ЭлементыHTML[3].СледующийСоседний.СледующийСоседний.ТекстовоеСодержимое; СтрокаТабличнойЧасти = Объект.ТабличнаяЧасть1.Добавить(); СтрокаТабличнойЧасти.Наименование = ТекСтрока; ЧтениеHTML.Закрыть(); КонецЦикла; КонецПроцедуры
gosn1ck там ничего сложного по сути нет, просто надо видеть полный html файл, по фрагменту трудно судить о структуре (хреново что нигде id в тэгах нету, поругать бы тех, кто экспортирует в таком виде). На глаз (насколько вижу по структуре): находите первую таблицу (тэг "table"), в ней выбираете внутренние таблицы (тэг "table"), в каждой внутренней выбираете строку (тэг "tr"), в каждой строке выбираете колонки (тэг "td") и из колонок уже берете соответствующие данные. Можете скинуть html, 100% не обещаю, но если время появится, постараюсь накидать конкретный пример.
у меня выскакивает ошибка: {Форма.РаботаHTML(4,22)}: Тип не определен (ЧтениеHTML) ЧтениеHTML = Новый <<?>>ЧтениеHTML; в СП по 1С81 тишина - такого метода нет
извиняюсь.. в 8.2 только появился этот объект. есть 2 пути: 1) конвертировать html в правильный xml с помощью сторонней программы и использовать объект ЧтениеXML 2) имхо - проще гораздо. поставить платформу 8.2 и сконвертировать базу в 8.2. режим совместимости не снимать. => все-таки новые платформы не просто так выпускаются
Ребята решил возобновить эту тему. Со сторонний программой все хорошо. Но решил задаться идеей , а можно ли сделать без неё. Нужно сохранять во временном файле, html документ загруженной из Интернет ( за пример берем - кинопоиск, из-за своей структуры). Итак используем: HTTPсоединение , соединение проходит нормально. потом использую метод - HTTPсоединение.Получить и тут самое интересное, нужно получить страницу типа - level/1/film/477764/ (но он почему-то ничего не сохраняет, другие сайты сохраняет , где явно заканчивается на .htm) Хотел использовать - полеhtmlдокумента, но тут не знаю как и нужно ли оно вообще Вопрос можно ли средствами 1с, как-то загрузить в файл страницы заканчивающие на level/1/film/477764/ ?