Парсер страниц сайта #688745


#0 by Ramzes_n
Доброго времени суток. Уже несколько месяцев назад сделал парсер для сайта. Но вчера обработка перестала работать. Ругается на строку: "Для Каждого Стр из ЭлементыФормы.Сайт.Документ.body.all Цикл" говорит что Поле не обнаружено all. А ведь раньше работало. Кто может подсказать, с чем это может быть связано?
#1 by Lionee
значит нет поля ,убрали
#2 by Ramzes_n
all - это ведь не Тег чтобы его убрали
#3 by Ramzes_n
других вариантов нет?
#4 by Dethmont
наверное body = неопределено?
#5 by Ramzes_n
body = COMОбъект
#6 by manyak
сайта страничка не открылась-загрузилась. вот там и пусто. проверяй readystate
#7 by Лаврентий Берия
DOM глянуть бы. Как ни странно, она может быть разный даже с одной и той же страницы под разными приложениями.
#8 by badboychik
что за мода пошла - писать на 1С парсеры сайтов
#9 by Ramzes_n
readyState = "complete"
#10 by Ramzes_n
что за DOM ?
#11 by mdocs
а что там - по сути тот же хмл особенно для парсера. объектная модель документа.
#12 by zakidonoff
Структура реквизитов интернет-страницы, если вкратце, грубо и не придираться -) Блин, мне тож такую штуку надо (парсер). Не поделишься?
#13 by Ramzes_n
вот. Процедура предопределенная, вызывается когда страница полностью загрузилась:
#14 by Ramzes_n
затык буквально в самом начале: раньше ведь всё работало. Для Каждого Стр из ЭлементыФормы.Сайт.Документ.body.all Цикл
#15 by zakidonoff
ХМ. Всё проще, чем я думал ) Спс.
#16 by Ramzes_n
варианты кончились?
#17 by zakidonoff
Он видит all даже когда тегов боди вообще нет... А отладчик что видит в боди? Какие реквизиты?
#18 by mdocs
как вариант убрать копрокод с циклом, заменить на человеческий GetElementById("wlt-PaymentAdminList-grid")
#19 by Ramzes_n
GetElementById("wlt-PaymentAdminList-grid") так получается. Но дальше опять затык: Для Каждого таблица из Стр.children Цикл Ошибка при получении значения атрибута контекста (children) А это как обойти?
#20 by Ramzes_n
много всяких реквизитов. Во многих значение "Ошибка чтения значения"
#21 by manyak
Для Каждого Стр из ЭлементыФормы.Сайт.Документ.body.all Цикл замени на Для Каждого Стр из ЭлементыФормы.Сайт.Документ.body.childNodes Цикл
#22 by Ramzes_n
пишет: Итератор для значения не определен
#23 by mdocs
Если ЭлементыФормы.Сайт.Документ.GetElementById("wlt-PaymentAdminList-grid")=Неопределено тогда Предупреждение("Ну вот нет тут такого элемента, вот ничо и не работает!!!");Возврат; КонецЕсли;
#24 by Ramzes_n
ЭлементыФормы.Сайт.Документ.GetElementById("wlt-PaymentAdminList-grid")    -  эта конструкция работает. Выдаёт COMОбъект. А как теперь получить в нём нужные теги?
#25 by zakidonoff
по индексу попробуй Х = 0; Цикл Попытка GetElementById(Х) КонецПопытки
#26 by zakidonoff
Во, нашёл -) Стр.document.GetElementsBytagName("TABLE")
#27 by Ramzes_n
Что-то странное творится. Принёс эту обработку на работу. И на моё удивление она работает. Т.е. старый вариант обработки работает. Значит что-то на моём компе произошло. Как думаете что могло произойти?
#28 by AndyD
браузер обновился антивирус или еще чего-нибудь
#29 by Ramzes_n
антивирус исключено. Браузер обновился - ну и что? сайт то открывается в 1С
#30 by zakidonoff
не совсем. Сайт открывает 1С через IE. Нужно смотреть настройки осла. Если у тебя свойства отражаются как "Ошибка чтения значения", значит 1С неадекватно забирает параметры из эксплорера
#31 by Ramzes_n
ок, как вариант вечером поковыряю
#32 by sikuda
1C тонкий клиент работает через установленный IE. IE11 нет в списке поддерживаемых браузеров. Ты тестер, подолжайте наблюдения.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С