kovyakin/parser-data-product-wb

parser data and photo product from wildberries

1.3 2024-10-08 18:44 UTC

This package is auto-updated.

Last update: 2025-04-29 01:24:41 UTC


README

Laravel Logo

GitHub watchers GitHub Downloads (all assets, all releases) Packagist Stars Packagist Version Packagist License

Parser data and photo product from wildberries (article Wb) for Laravel

Требования

  • Laravel 11 и выше.
  • PHP 8.2 и выше.

Установка

  • composer require kovyakin/parser-data-product-wb
  • php artisan migrate

Важное замечание!

Использовать с очередями QUEUE !!!

Использование

1.Пользователь должен быть зарегистрирован.

2.Пример кода:

$my_parser = new ParserDataWb();
$articleWb = 219503618;
$my_parser->parse($articleWb);

Результат будет true или false.

Обновление записи ~3.4s
Создание записи ~2.0s
Нет записи ~3.2s

3.Парсер создает 3 таблицы:

- nmId;
- photo_products;
- data_products;

3.1.Таблица nmId

Описание полей:
- user_id (int) - id пользователя;
- nmId (int) - артикул продукта Wb, который мы получаем;
// как пример - получение артикула продукта из БД.
// работают все методы модели.

$user_id = auth()->user()->id;
NmId::query()->where('user_id',$user_id)->first();

3.2.Таблица photo_products

Описание полей:
- nm_id (int) - id записи из таблицы nmId;
- url_photo (string,255) - спарсенный url главного изображения продукта;
// как пример - получение url главного изображения продукта из БД.
// работают все методы модели PhotoProducts.
$user_id = auth()->user()->id;
$nmId = NmId::query()->where('user_id',$user_id)->first();
$nmId->photo;
//или
$nmId->photo['url_photo'];
// можно получить модель nmId, принадлежащий к данному photo_products
// Отношение с таблицей nmId - HasOne
$photoModel = PhotoProducts::query()
    ->where('nm_id',$nmId->id)->first();
$photoModel->nmId;

3.3.Таблица data_products

Описание полей:
- nm_id (int) - id записи из таблицы nmId;
- data (json,255) - спарсенный data главного изображения продукта;
- state (json,255) - спарсенный state главного изображения продукта;
// как пример - получение data главного изображения продукта из БД.
// работают все методы модели DataProducts.

$user_id = auth()->user()->id;
$nmId = NmId::query()->where('user_id',$user_id)->first();
$nmId->data;
//или
$nmId->data['data'];
$nmId->data['state'];
// можно получить модель nmId, принадлежащий к данному photo_products
// Отношение с таблицей nmId - HasOne
$dataModel = DataProducts::query()
    ->where('nm_id',$nmId->id)->first();
$dataModel->nmId;

4.Описание полей 'data', 'state' таблицы data_products:

-все и так ясно по ключам значений.

5.Публикация

php artisan vendor:publish --provider="Kovyakin\ParserDataProductWb\Providers\ParserServiceProvider"

Журнал изменений

Журнал изменений CHANGELOG.md, что изменилось в последнее время.

Автор

Лицензия

Это MIT License (MIT). Посмотрите License File для ознакомления.