Kiselev Ewgen

10
Рейтинг

ewgen87



  •   Регистрация: 24.02.2010 (14 лет назад)

  •   Был(а) на сайте: 03.04.2024

Подписчики 2

Рейтинг 10


Комментарии

DevМод обработки загрузки характеристик яндекс.маркет#26 19.01.17 17:44
(24)
Цитата
Евгений, большое спасибо за обработку.

УТ 10.3:

- при попытке разбора страницы, снова падает с ошибкой(см. рис.1);

- при изменении размера формы обработки кнопка "Яндекс -маркет" не на своём месте
Прикрепленные файлы:

Попробуйте, закоментировать строку:
Код
 //  НайденнаяСсылкаСтар = Найти(ВебСтраница1,"model");


и

Код
 //Если НайденнаяСсылкаСтар > 0 тогда
  //     АдресСсылка1 = СтрЗаменить(АдресСсылка,"model.xml","model-spec.xml");
  //      АдресСсылка2 = СтрЗаменить(АдресСсылка,"model-spec.xml","model.xml");
  //     ВерсияМаркета = Ложь;
  //КонецЕсли;


У кнопки Яндекс.Маркет не была установлена привязка границ. В свойствах выберите
Установить правила:
Привязать к форме к правой границе и к верхней границе

Форму ни разу не раздвигал, поэтому не обращал внимания
DevМод обработки загрузки характеристик яндекс.маркет#25 16.01.17 14:21
(24)
Цитата
а страницы, снова падает с ошибк

Добрый день!
К сожалению времени катастрофически не хватает чтобы исправить, попробуйте зайти во вкладку на яндекс.маркет: "Характеристики" потом опять в "Описание" и нажать "Выполнить" и подождать до полной загрузки страницы
DevМод обработки загрузки характеристик яндекс.маркет#23 08.10.16 9:54
(22) teomen_, Поправил обработку, работает с Internet Explorer 8 и 11 (на других не проверял)
DevМод обработки загрузки характеристик яндекс.маркет#21 19.09.16 15:33
19.09 Сегодня заметил, что я.маркет переделал страницу. Как будет время, постараюсь переделать
DevМод обработки загрузки характеристик яндекс.маркет#20 07.09.16 14:50
(19) graf1976, Сегодня проверял - работает, правда желательно пользоваться совместно с обработкой http://infostart.ru/public/14986/ (бесплатная). Так как тут в этой обработке нет проверки на существование такой-же характеристики в реестре, поэтому создается новая, а это нагружает базу. Времени запилить проверку пока нет, поэтому пользуюсь той обработкой для поиска и замены дублей (Объект поиска: СвойстваОбъектов -> по наименованию)
DevМод обработки загрузки характеристик яндекс.маркет#18 19.02.16 17:29
UPD 19.02.2016

При точном наименовании номенклатуры (таким-же как в яндекс.маркет) страница переходит сразу в описание, но адресная строка немного другая. Поправил. Должно работать.

Код
Процедура КнопкаВыполнитьНажатие(Кнопка)
  ОбработкаОбъект.ВебСтраница1 = ЭлементыФормы.ПолеHTMLДокумента1.Документ.URLUnencoded;
  ОбработкаОбъект.АдресСсылка = ВебСтраница1;
  НайденнаяСсылка = Найти(ВебСтраница1,"?hid");
  НайденнаяСсылкаСтар = Найти(ВебСтраница1,"model");
  НайденнаяСсылкаШовУид = Найти(ВебСтраница1,"?hid&show-uid");
  НайденнаяСсылкаРедир = Найти(ВебСтраница1,"?was_redir=1&hid");

  Если НайденнаяСсылка > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"?hid","/spec?hid");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"/spec?hid","?hid");
      ВерсияМаркета = Истина;
  КонецЕсли;
   
  Если НайденнаяСсылкаШовУид > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"?hid&show-uid","/spec?hid");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"/spec?hid","?hid&show-uid");
      ВерсияМаркета = Истина;
  КонецЕсли;

  
  Если НайденнаяСсылкаСтар > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"model.xml","model-spec.xml");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"model-spec.xml","model.xml");
      ВерсияМаркета = Ложь;
  КонецЕсли;
   
  Если НайденнаяСсылкаРедир > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"?was_redir=1&hid","/spec?hid");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"?was_redir=1&hid","?hid");
      ВерсияМаркета = Истина;
  КонецЕсли;
  
  Если АдресСсылка1 <> АдресСсылка тогда
     ЭлементыФормы.ПолеHTMLДокумента2.Перейти(АдресСсылка2);
     ЭлементыФормы.ПолеHTMLДокумента1.Перейти(АдресСсылка1);
     Предупреждение("Перенаправление на страницу характеристик. Дождитесь загрузки страницы и нажмите Ок");
  Иначе 
     ЭлементыФормы.ПолеHTMLДокумента2.Перейти(АдресСсылка2);
     Предупреждение("Попытка загрузки характеристик");
  КонецЕсли;
  Данные = ЭлементыФормы.ПолеHTMLДокумента1.ПолучитьТекст();
  Данные1 = ЭлементыФормы.ПолеHTMLДокумента2.ПолучитьТекст();
  выполнение = Истина;
  Закрыть();
  КонецПроцедуры
DevМод обработки загрузки характеристик яндекс.маркет#17 23.10.15 22:35
UPD 23.10

У Яндекса очередное "супер-мега" обновление:
в названии класса добавилось слово -wrap:
layout__col layout__col_size_p75 product-spec-wrap

Найти в конфигураторе: product-spec
Заменить на: product-spec-wrap
DevМод обработки загрузки характеристик яндекс.маркет#16 14.05.15 10:32
UPD 14.05
Яндекс-маркет перешел на https. Для поиска по названию номенклатуры нужно в процедуре "ПриОткрытии()" заменить строку на:
ЭтаФорма.ЭлементыФормы.АдресСсылки.Значение = "https://market.yandex.ru/search.xml?&text=" + Номенклатура.Наименование;
DevМод обработки загрузки характеристик яндекс.маркет#15 13.04.15 21:40
Немного поменялся код в яндексе выкладываю код процедуры КнопкаВыполнитьНажатие в ФормаВыбораСтраницы:

Код
Процедура КнопкаВыполнитьНажатие(Кнопка)
  ОбработкаОбъект.ВебСтраница1 = ЭлементыФормы.ПолеHTMLДокумента1.Документ.URLUnencoded;
  ОбработкаОбъект.АдресСсылка = ВебСтраница1;
  НайденнаяСсылка = Найти(ВебСтраница1,"?hid");
  НайденнаяСсылкаСтар = Найти(ВебСтраница1,"model");
  НайденнаяСсылкаШовУид = Найти(ВебСтраница1,"?hid&show-uid");

  Если НайденнаяСсылка > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"?hid","/spec?hid");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"/spec?hid","?hid");
      ВерсияМаркета = Истина;
  КонецЕсли;
   
  Если НайденнаяСсылкаШовУид > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"?hid&show-uid","/spec?hid");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"/spec?hid","?hid&show-uid");
      ВерсияМаркета = Истина;
  КонецЕсли;

  
  Если НайденнаяСсылкаСтар > 0 тогда
      АдресСсылка1 = СтрЗаменить(АдресСсылка,"model.xml","model-spec.xml");
        АдресСсылка2 = СтрЗаменить(АдресСсылка,"model-spec.xml","model.xml");
      ВерсияМаркета = Ложь;
  КонецЕсли;
  
  Если АдресСсылка1 <> АдресСсылка тогда
     ЭлементыФормы.ПолеHTMLДокумента2.Перейти(АдресСсылка2);
     ЭлементыФормы.ПолеHTMLДокумента1.Перейти(АдресСсылка1);
     Предупреждение("Перенаправление на страницу характеристик. Дождитесь загрузки страницы и нажмите Ок");
  Иначе 
     ЭлементыФормы.ПолеHTMLДокумента2.Перейти(АдресСсылка2);
     Предупреждение("Попытка загрузки характеристик");
  КонецЕсли;
  Данные = ЭлементыФормы.ПолеHTMLДокумента1.ПолучитьТекст();
  Данные1 = ЭлементыФормы.ПолеHTMLДокумента2.ПолучитьТекст();
  выполнение = Истина;
  Закрыть();
КонецПроцедуры
DevМод обработки загрузки характеристик яндекс.маркет#14 04.03.15 13:38
(13) harlag, Для этого нужно в конфигурацию встроить внешнюю обработку. В справочник Номенклатура на форме "Форма элемента" добавить кнопку. В обработчик событий кнопки добавить

ОбработкаЗагрузкаХарактеристикМаркет = Обработки.ЗагрузкаХарактеристикТовараСЯндекМаркет.ПолучитьФорму("Форма");
ОбработкаЗагрузкаХарактеристикМаркет.Номенклатура = Ссылка;
ОбработкаЗагрузкаХарактеристикМаркет.ОткрытьМодально();