Рекомендуемые сообщения

RGB    1 004

1) Итак, первое впечатление - ничего не работает :-)/>

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

Вот тогда уже парсит.

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

3) Дальше - после парсинга товара появляется попап с новым товаром, который по умолчанию благополучно блокируется хромом :-)/> ИМХО лучше было бы его не всплывающим окном делать, а как-то по другому.

4) Не очень понятно, как работают пхп-вставки. Вот у меня один особо одаренный донор выводит атрибуты в таблице вот так:

строчка таблицы

< td >Имя атрибута< /td > < td > < /td >   < td >Значение атрибута< /td >

Средняя ячейка просто пустая :-) (табличные теги почему-то не видно, поэтому я их с пробелами пишу) Так что при парсинге по инструкциям розетки, атрибуты смешиваются в кашу. Я пытаюсь сделать в инструкции вот так (чтобы убрать эти пустые ячейки):

attributes["Характеристики"] = tags_text("#item_center table tr td")
//PHP $attributes= preg_replace( "< td > < /td >" , "" , $attributes);
//END
Но так не катит. Где моя ошибка?

5) Еще такой момент - с той же розетки можно хорошие описания парсить вот так:

description = tag_text("#short_description")
но при этом теряются хтмл-ные теги, типа абзацев, переносов. Что не есть хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    1 004

Можно перед, вот так:

//PHP
$html2 = str_replace( "< td > < /td >" , "" , $html);
attributes["Характеристики"] = tags_text("#item_center table tr td",$html2)
//END

Есть команда tag_html - она даёт весь хтмл внутри тега. Она хороша для описаний.

Теперь вообще ничего не парсится - зависает на этапе Fetching

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    1 004

Ой, точки с запятой не хватает в конце во второй строчке :|

Ненене, я это заметил и исправил, все равно так же. А убираю пхп-вставку такую и все работает, не понятно чего так.

Вообще мне кажется не очень эффективным проверять весь $html на наличие таких пустых ячеек - это как стрелять из пушки по воробьям.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
snastik    798

Это тоже интересная тема! Как ты себе представляешь идеальное решение этой задачи? Куда и в каком виде должны попадать данные?

отписался в личку чтобы тут не захламлять

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    1 004

Еще вопрос - как быть для такой ситуации, когда ссылки на картинку товара нет в понятном виде (как в приведенных инструкциях, когда там все просто по тегу а находится)?

Пример с моего донора:

<a id="photogal" href="javascript:;"><div style="width:290px; height:150px; background-color: #ffffff; background-position: center center; background-size: contain; -moz-background-size: contain; background-image: url('/files/images/items/mx15r.jpg'); background-repeat: no-repeat;">
</a>

Как видно, урл картинки зашит в цсс-свойстве background-image. Резать через пхп?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
xxBRATxx    22

Еще вопрос?

Как удалять доноров??? А то на создавал кучку...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    1 004

Нашёл, почему не выдаёт текст ошибки, исправляю. В том куске кода перед attribute надо $

Только-только начал набирать тоже самое, как твое сообщение появилось :-)

Правда в этом случае есть один момент - после такого куска:

//PHP
$html2 = str_replace( "< td > < /td >" , "" , $html);
attributes["Характеристики"] = tags_text("#item_center table tr td",$html2)
//END

Весь хтмл донора (все картинки, счетчики и т.п. хлам) вываливается на страницу с выводом диагностических сообщений, ну где ошибки выводятся. Можно ли вообще сделать возможность отключения этой страницы?

А с inside тоже все хорошо, кроме одного:

$main_image = inside ( "url('" , "')", tag_attr("#item_img a div", "style") );
$main_image = "http://site.com".$main_image;
Поскольку в цсс прописываются не абсолютные пути, то надо уже в пхп добавлять site.com к адресу получившейся картинки. Ну это уже не к парсеру относится, а к инструкциям, над которыми придется шаманить.

Еще пожелание - я заметил, что спарсившиеся картинки, при наличии таких же с такими же именами, не перезаписываются, а дописываются с добавлением номера. Может стоит их все-же перезаписывать? У меня вот за время моих вышеописанных экспериментов уже 36 абсолютно одинаковых картинок. Так и место у хостера закончится в два счета, если парсить какую-нибудь розетку :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
xxBRATxx    22

Не могу понять как будет выглядеть инструкция для этого.

<table class="item">
    <tr>
	 <td class="l" >
	 
	  <a href="/catalog/parts/controllers/24596/"><div class="photo" style="background-image:url(/_catalog_images/24596_v01_s.jpg);"></div></a>
	  <b>24596 <a href="/catalog/parts/controllers/24596/">Контроллер * PCI USB 2.0 (4+1)port VIA6212 bulk</a></b>
	  <div class="descr"></div>
	 </td>
</table>
Похоже на это? tags_href(". item l b a a")

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
xxBRATxx    22

Мне кажется

tags_href( ".item tr .l b a" )
должно сработать -_-
Спасибо, понял, что вообще все неправильно сделал =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nromka    22

Естественно, бесплатный сыр только в мышеловках. Вы сможете потестировать обработку одного товара на вашем доноре - но не сможете запустить автоматический парсинг. Пока что цена сервиса такова:

$30 за одного донора на один ваш сайт за один год
1. Из выше написанного следует, что это будет абонплата 30$ в год за одного донора? Если покупатель парсит 10 сайтов, то платит 300$ в год? Или это разовый платеж за одного донора?

2. Поменялась структура сайта. Будут инструкции переписываться и поддерживаться на протяжении года?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Tom    1 981

1. Из выше написанного следует, что это будет абонплата 30$ в год за одного донора? Если покупатель парсит 10 сайтов, то платит 300$ в год? Или это разовый платеж за одного донора?

2. Поменялась структура сайта. Будут инструкции переписываться и поддерживаться на протяжении года?

По моему первый вопрос дублирует сам себя.Я так понял это один донор.

А по второму, так вообще это цена без инструкций к донору,просто абонплата за пользование парсером.Потому и все проблемы связанные с изменением внутри донора ни как не относятся к этой сумме.

ПС У Яси эти условия оговаривались сразу и он предупреждал сразу,что бесплатно не будет вносит поправки в инструкции если что то изменилось на стороне донора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Quixtar    0

Новый простой синтаксис

Теперь инструкции как-то по-другому пишутся?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Quixtar    0

Подскажите пожалуйста, как из вот этого кода откуда я беру атрибуты убрать div'ы "Производитель", "Код производителя" и "Описание"

<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Производитель</div>
<div itemprop="brand" class="opened-item-right-right">AMD</div>
</div>
<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Код производителя</div>
<div class="opened-item-right-right">SDX145HBGMBOX</div>
</div>
<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Процессор</div>
<div class="opened-item-right-right">AMD Sempron 145</div>
</div>
<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Процессор</div>
<div class="opened-item-right-right">AMD Sempron</div>
</div>
<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Разъем процессора (socket)</div>
<div class="opened-item-right-right">AM3</div>
</div>
<div class="opened-item-right-item-line">
<div class="opened-item-right-left">Описание</div>
<div class="opened-item-right-right">
<h2><span itemprop="description">Sempron 145 (2.8Ghz/1MB/45W) Socket AM3 SDX145HBGMBOX</span></h2>
</div>
</div>

Атрибуты беру по такой инструкции

attributes ["Характеристики"] = tags_text ".opened-item-right-item-line div"
Изменено пользователем Quixtar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От hegst
      Здравствуйте Ув. форумчане. Возникла проблема при выгрузке товаров через модуль выгрузки Export/Import Tool (V3.17) for OpenCart 2.x
      Проблема в следующем...
      Дела. Экспорт, добавляю один товар для пробы и делаю импорт, но выдает ошибку валидации, по журналу смотрю вот такие вот ошибки (на фото)
      Проверяю атрибуты во вкладке ProductAttrib в таблице, все заполнено (корректно) но добавляться файл импорта на сайт все равно не хочет. В чем может быть проблема?
      Модуль последней версии, Версия ocStore 2.1.0.2.1
      что можно сделать, может кто сталкивался? подскажите.
      Может у кого-то есть еще какой-то другой модуль импорт экспорт? буду признателен.
       
       


    • От ZRcode

      750.00 руб
      Скачать/Купить дополнение


      ZR code - Mega CSV Import [Opencart 1.5.X - 2.X.X]
      С помощью модуля "ZR code | Mega CSV Import" Вы с лёгкостью сможете импортировать любые прайс-листы в формате csv в Ваш магазин на платформе opencart, так-как данный модуль можно настроить под множество вариаций исходного файла задав значение для каждой колонки Вашего документа.
      Данный модуль позволит Вам импортировать и самому задать категории в которые будут закачиваться товары используя вкладку "Список категорий", также если в Вашем прайс-листе количество указано по типу много, мало и т.д. во вкладке "Настройки количества" Вы сможете сами задать данным значениям численный эквивалент.
      На основной странице модуля находятся следующие настройки:
      Разделитель – позволяет выбрать разделитель использующийся в вашем csv файле Начальная строка – позволяет выбрать строку с которой начнется импорт товаров Строки – используя данную настройку Вы выбираете по сколько строк импортировать за раз (во избежании большой нагрузки на сервер) Тип обновления товара - позволяет выбрать действие для совпадающих товаров (обновить цену, обновить товар, не обновлять) Тип сравнения - (и либо или) позволяет выбрать сравнение товара по заданным Вами значениям в которых совпадают 2 варианта либо же хотя бы 1 Сравнение категорий – категории Вы можете сравнивать по списку либо же значению Сравнения производителей – производителей Вы можете сравнивать по списку либо же значению Добавления в родительские категории – данная опция позволит выбрать добавлять ли товар в родительские категории либо же только в заданную категорию Так же Вы можете выбрать язык товара, Валюту товара, задать фиксированную наценку либо же процент от стоимости для импортируемых товаров, выбрать облагать ли товар налогом или нет. Задать статус товара если его нет в наличии, указать необходим ли ему доставка или нет и стоит ли его вычитать со склада при продаже.
      Во вкладках "Список категорий", "Настройки количества" и "Список производителей" есть возможность импортировать данные на прямую из csv файла.
      Для каждого csv файла можно создать отдельное правило импорта товаров.
      Вы можете импортировать:
      Название Описание Модель Артикул (SKU) Цена Количество Изображение товара Дополнительное изображение товара Категория Идентификатор товара Атрибуты Акционную цену SEO URL Производителей Минимальное количество Размеры товара  
      Поддержка кодировок csv файла: UTF-8 и Windows-1251
       
      Для работы модуля требуется IonCube Loader версии не ниже 5.0 (с PHP не ниже 5.3)!
       
       
      Лицензия у модуля строго на один магазин.
      Инструкция по активации доступна в админке модуля.
      Совместим с версиями opencart: 1.5.X - 2.X.X
      С ув. команда ZR code
      Добавил ZRcode Добавлено 14.04.2016 Категория Обмен данными Системные требования IonCube Loader не ниже 5.0 PHP не ниже 5.3 Сайт разработчика https://zr-code.com Старая цена Метод активации По запросу на почту Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop  
    • От MaxD

      Скачать/Купить дополнение


      LiveImport - импорт Excel и сайтов
      .
      Модуль для импорта таблиц (XLS, XLSX, CSV) и сайтов

      поддерживает импорт действительно больших файлов можно дописывать логику импорта в виде небольшого PHP-скрипта предустановленные настройки для AliExpress и eBay для любых сайтов можно настраивать через Мастер, как в Язык - английский. Есть версии для OpenCart 1.5+, OpenCart 2.0 и самостоятельная.
      Работает с PHP 5.3 ... 7.0
      Это бета, поэтому имейте в виду, что все синтаксисы и разметки могут измениться в будущем без предупреждения и соблюдения обратной совместимости.
       
      Как настраивать парсинг одиночных товаров с сайта - https://youtu.be/W_yPVZsj62E
      Как настраивать авторизацию на доноре - http://liveimport.devs.mx/service/auth.html
       
      Для массового парсинга товаров с сайта необходимо приобрести лицензию.
       
      Установка для ocStore/OpenCart 2+
      Установка для ocStore/OpenCart 1.5+
      Установка самостоятельной версии
      Добавил MaxD Добавлено 22.02.2016 Категория Обмен данными Системные требования Сайт разработчика http://liveimport.devs.mx/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart ocStore OpenCart.Pro, ocShop  
    • От final4ik
      Здравствуйте, уважаемые форумчане!
      Я уверен что тема поднятая мной затрагивалась, но все же прошу вас подсобить мне советом.
      Условия: Есть 4 поставщика, которые предлагают XML ссылку для импорта товаров. У каждого примерно по 2000 товаров.
      Нужен модуль которых будет раскидывать товар по заданным категориям, обновлять цену и наличие 1 раз в день и стабильно работать с opencart 2.3.0.2. Так же должен происходить импорт фотографий товаров. Желательно чтобы количество фотографий для импорта я мог выбрать самостоятельно.
      Готов купить модуль (бесплатные насколько я понял и не обладают нужным мне функционалом). Бюджет ограничен, но за стоящий инструмент готов заплатить.
      Заранее, всем откликнувшимся большое спасибо!
       
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу