Парсим XML выгрузки товарок и делаем доры на мультикеях.


Как и обещал в одном из последних постов «Планы на будущее«, рассказываю о том, как можно сделать товарные доры с закосом под СДЛ, используя мультикеи и XML выгрузки из разных партнерок.

Что нам понадобится?

  • Любой дорген, который поддерживает функцию мультикеев
  • Openserver или любой другой удобный локальный сервер

Но как всегда, обо всем по порядку. Для начала нам нужно получить сами xml выгрузки товаров и распарсить их, чтобы привести к виду мультикеев. Я могу порекомендовать две партнерки, которые позволяют скачать xml выгрузки товаров:

  1. GdeSlon — рунет
  2. EPN — бурж

В первую очередь регаемся и качаем xml выгрузку товаров из обоих ПП. Дальше надо качнуть этот архив. В нем лежат два простеньких php скрипта, которые распарсят наш xml/yml. После этого кидаем файлы архива и xml, скачанные из ПП, в папку какого-нибудь локального домена. Я использую OpenServer и у меня путь выглядит так: D:\OpenServer\domains\xmlgen.loc

Теперь открываем оба php файла в любом текстовом редакторе и в самом верху указываем названия xml/yml файла и разделитель для мултикеев.xml

Обратите внимание, что в файле slon_gen.php надо указать название выгрузки из партнерки где слон, а в файле epn_gen.php -соответственно из epn.

После этого надо запустить скрипт из консоли, потому что большие XML выгрузки (пару ГБ) могут парситься около 10 мин и вызывать таймаут, если открывать через браузер. Размер ОЗУ на компе не имеет значения, так как скрипт не считывает весь XML в оперативку, а берет блоками пока не достигнет конца файла. Я делаю это так:cmd_openserver

После этого в папке появится файл «goods_multikey.txt», переименовываете его по желанию и копируете куда надо. По сути, там уже готовые ключи под мультикей, которые содержат название товара, цену, картинку, валюту, партнерскую ссылку итд. Думаю, что там все интуитивно понятно. Единственное, после распарсинга выгрузки из партнерки epn, надо открыть файл goods_multikey.txt в notepad ++ (если файл не очень большой) или в Penguin (если большой), и сделать массовую замену «__DEEPLINK-HASH__» (без кавычек) на ваш диплник, который можно создать в личном кабинете. Подробно описано в FAQ.

После этого остается только сделать красивый шаблон/шаблоны под ваш любимый дорген и начинать генерировать.

Делитесь в комментах партнерками, где еще можно делать выгрузки товаров и/или где есть API. Ну и вообще делитесь успехами и рассказывайте как дела 🙂

 

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


26 комментарии на “Парсим XML выгрузки товарок и делаем доры на мультикеях.

  1. Будешь тестить нишу? Пробежался по выдаче, всё итак захламлено ИМ-ами, дорвеев нет почти.

    1. На самом деле в выдаче есть доры. Только выглядят они как каталоги товаров с поиском, релевантными товарами и человеческим описанием.

  2. $separator не вижу в пхп файликах, на скриншоте есть

    1. Блин, старый архив залил. Обновил только что, перекачай архив еще раз, там все есть.

  3. Со стандартным контентом из XML-выгрузок трафа будет мизер.

  4. Black Insider, а где в партнерке EPN выгрузки товаров? что то никак не найду ссылку Инструменты, видать это устаревшая инфа у тебя

    1. Инструменты — экспорт товаров. Плохо искал 🙂

    2. Инфа актуальная, так как все это делал сам перед написанием поста.

  5. Привет
    Спасибо за скриптик. Немного модифицировал его, если кому надо, держите: В ЦИКЛЕ ПОСЛЕ ПЕРЕМЕННОЙ $URL добавить $url = str_replace(‘__DEEPLINK-HASH__’, $deeplink, $url);
    после переменной $separator добавить строчку $deeplink = ‘ваш диплинк’;
    и тогда не нужно ничего менять в пингвинах))) все само делается на лету)

  6. Спасибо. Интересно, а с другими партнерками будет работать? Или скрипт заточен под распарсинг xml файлов только указанных партнерок?

    1. Там легко поправить можно под любую xml. А какие еще есть партнерки хорошие?

      1. Работаю с европейскими, могу порекомендовать — tradetracker, tradedoubler, zanox.

        1. Спасибо, гляну. У них API и/или выгрузки товаров есть?

  7. Здравствуйте. Подскажите пожалуйста как сделать? Если в хмл файле хочу распарсить дескрипшн, но сам текст внутри дескрипшена идет с новой строчки, то есть не в одну строчку, а получается в несколько строк. Все парсит классно, но вот этот дескрипшин так и записывает в goods_multikey.txt не в одну строку, а в несколько строчек.

    1. Привет. Можно просто заменить символ перевода строки на пустую строку. Как-то так:
      // переменная $description должна содержать спаршенное из xml описание в несколько строк

      $description = str_replace("\r\n","", $description);
  8. Что то не получилось, я наверное ее не туда вставляю. 🙁 С пхп на вы… Ставлю так, ничего не меняется:
    open($fileXML);

    $doc = new DOMDocument;

    // переходим к первому offer
    while ($z->read() && $z->name !== ‘offer’);

    // теперь на нужной глубине, переходим к следующему offer до конца древа
    while ($z->name === ‘offer’)
    {
    $node = new SimpleXMLElement($z->readOuterXML());
    $name = $node->name;
    $price = $node->price;
    $url = $node->url;
    $currency = $node->currencyId;
    $description = $node->description;
    $thumb = $node->thumbnail;
    $pictures_array = $node->picture;
    $description = str_replace(«\r\n»,»», $description);
    $fp = fopen(«goods_multikey.txt», «a»);
    fwrite($fp, «{$name}{$separator}{$description}{$separator}{$pictures_array[0]}{$separator}{$price}{$separator}{$currency}{$separator}{$url}\r\n»);
    fclose($fp);

    // к следующему
    $z->next(‘offer’);
    }

  9. Залей куда-нибудь xml , который пытаешься распарсить (или хотя бы часть) и пришли ссылку сюда. Я пробовал, у меня работает, но я не знаю из какой ПП ты парсишь, потому что там вроде бы нигде нет дескрипшина.

  10. Ох, теги повырезало. Может даш свое мыло, я на него скину.

  11. запустить скрипт из консоли. как это сделать можно подробно описать через командную строку не получается

  12. Пробовал делать такие магазы, в итоге, если сделать с десяток по 300-400к страниц с товарами, то можно разориться на хостинге, пока профит будешь ждать.

  13. А зачем делать на 400к страниц) — выбирай под определенную нишу/ тему/ категорию

  14. Black Insider не подскажешь сервисы для оплаты через кредитки домены .com .net по 1 баксу чтобы были.

    1. В смысле регистраторы? Я знаю только 1and1.com и godaddy по 1 баксу. Но они дают регнуть только 1 домен для 1 акк. Как сейчас дела обстоят с виртуальными картами не знаю, раньше вроде бы принимали.

      1. Мысле дальше……..1 акаунт 1 домен 1карта или paypal…
        Вот где найти сервисы,которые предоставляют разные карты для оплаты каждого домена?
        Типо этих sms-activate ру ,но эти по смс….

Обсуждение закрыто.