Skip to content

Клиента для работы с API сайта

License

Notifications You must be signed in to change notification settings

VRn00b/api-php-client

 
 

Repository files navigation

Build Status StyleCI Code Coverage Scrutinizer Code Quality

api-php-client

Клиент для работы с API сайта sima-land.ru Позволяет выкачивать каталог товаров с сайта sima-land.ru.

Требования

Установка

composer require "sima-land/api-php-client": "~1"

Документация API

Возможности

  • Формирование HTTP запросов, авторизация
  • Асинхронные запросы на получение данных
  • Получение каталога
  • Возобновление скачивания данных после сбоя
  • Повторное опрашивание ресурса при возникновении ошибки
  • Логирование

Пример парсинга

В данном примере парсинг получит все категории и товары.

$client = new \SimaLand\API\Rest\Client([
    'login' => 'login',
    'password' => 'password'
]);

$parser = new \SimaLand\API\Parser\Parser(['metaFilename' => 'path/to/file']);

// добавляем список категорий
$categoryStorage = new \SimaLand\API\Parser\Csv(['filename' => 'path/to/category.csv']);
$categoryList = new \SimaLand\API\Entities\CategoryList($client);
$parser->addEntity($categoryList, $categoryStorage);

// добавляем список товаров
$itemStorage = new \SimaLand\API\Parser\Csv(['filename' => 'path/to/item.csv']);
$itemList = new \SimaLand\API\Entities\ItemList($client);
$parser->addEntity($itemList, $itemStorage);

$parser->run();

Подробное описание компонентов парсера можете посмотреть здесь:

Демонстрационное приложение

Пример приложения, позволяещего полностью скачать каталог. Данный пример содержит подробное описание использования всех компонентов.

Исходный код

Ограничение

Существует лимит в 250 запросов к API за 10 секунд.

Тесты

Тесты запускаются из корневой директории пакета.

php ./vendor/bin/phpunit

Если что-то пошло не так

Вы можете задать вопрос в issue

About

Клиента для работы с API сайта

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%