wb-private-api v0.6.6
NodeJS модуль. Работает через приватное API Wildberries
Установка: npm i wb-private-api
После установки рекомендую протестировать работоспособность
Если все результаты положительные, значит библиотека полностью работоспособна и сервера WB отвечают верно. В случае, если каки-либо тесты отрицательные, прошу создать обращение https://github.com/glmn/wb-private-api/issues
Пример работы
Вывод данных о первом товаре из поисковой выдачи по ключевому слову
import { WBPrivateAPI, Constants } from "wb-private-api";
const keyword = "HotWheels";
/*
* Select destination and init WBPrivateAPI with it
* You can find more destionations in Constants.DESTINATIONS
*/
const destination = Constants.DESTINATIONS.MOSCOW;
const wbapi = new WBPrivateAPI({ destination });
const initiate = async () => {
/*
* Search and Grab first 2 pages
* with specified keyword
*/
const catalog = await wbapi.search(keyword, 2);
const product = catalog.products[0];
/*
* Returning all Stocks with Warehouses Ids
* Then you can compare these Ids
* using Constants.WAREHOUSES
*/
const stocks = await product.getStocks();
/* No comments here :P */
const feedbacks = await product.getFeedbacks();
const questions = await product.getQuestions();
};
initiate();
Вывод рекламодателей из поисковой выдачи по ключевому слову
import { WBPrivateAPI, Constants } from "wb-private-api";
const keyword = "Менструальные чаши";
/*
* Select destination and init WBPrivateAPI with it
* You can find more destionations in Constants.DESTINATIONS
*/
const destination = Constants.DESTINATIONS.MOSCOW;
const wbapi = new WBPrivateAPI({ destination });
const initiate = async () => {
/*
* Search ads in search results
* with specified keyword
*/
const { pages, prioritySubjects, adverts } = await wbapi.getSearchAds(
keyword
);
// Ads positions on each page
console.log(pages);
// Subjects ordered by priority
console.log(prioritySubjects);
// Adverts including CPM
console.log(adverts);
};
initiate();
WBPrivateAPI
методы
.search(keyword, pageCount, retries = 0, filters = [])
- Поиск всех товаров по Ключевому слову keyword
. pageCount
отвечает за кол-во необходимых страниц для прохода. Если pageCount = 0
, то будет взяты все страницы или 100
, если их больше. retries
отвечает за количество попыток выполнить запрос, если в ответ был получен статус 5хх или 429. filters
это массив с объектами вида [{type: 'fbrand' value: 11399 }]
, необходим для фильтрации поисковой выдачи по брендам, поставщикам, цене и т.д. Метод возвращает объект WBCatalog
.getSearchAds(keyword)
- Поиск рекламодателей (в разделе Поиск) по Ключевому слову
.getCarouselAds(keyword)
- Поиск рекламодателей внутри карточке в каруселе "Рекламный блок"
.keyHint(query)
- Возвращает список подсказок из поиска WB по фразе query
.searchSimilarByNm(productId)
- Возвращает список похожих товаров (как в разделе "Похожие товары" внутри карточки на WB)
.getPromos()
- Возвращает массив текущих промо-акций на WB
.getListOfProducts(productIds)
- Возвращает массив найденных артикулов на WB с деталями (Не оборачивается в WBProduct)
WBCatalog
методы
.page(number)
- Возвращает массив товаров с заданной страницы (массив состоит из объектов WBProduct
)
.getPosition(productId)
- Возвращает номер позиции по заданному SKU. Если такого SKU в выдаче нет, то вернёт -1
WBProduct
методы
.create(id)
- Статичный метод. Использовать в виде WBProduct.create(id)
. Где id
= Артикул товара
. Метод асинхронный, поэтому перед вызовом используйте await
. Вернет объект WBProduct
.totalStocks
- Вернёт сумму остатков товара со всех складов (!) предварительно вызвать .getStocks()
)
.getStocks()
- Присвоет (и вернет) свойству stocks
массив с данными об остатках на складе
.getPromo()
- Присвоет (и вернет) свойству promo
объект с данными об участии в промо-акции
.getFeedbacks()
- Присвоет (и вернет) свойству feedbacks
массив со всеми отзывами WBFeedback
о товаре
.getQuestions()
- Присвоет (и вернет) свойству questions
массив со всеми вопросами WBQuestion
о товаре
WBFeedback
методы
.getPhotos(size='min')
- Вернет ссылки на все фотографии в текущем отзыве. size
по умолчанию = min
. Заменить на full
если необходим большой размер
3 months ago
3 months ago
5 months ago
11 months ago
12 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
10 months ago
11 months ago
10 months ago
7 months ago
10 months ago
10 months ago
1 year ago
1 year ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
1 year ago
2 years ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago