...
Условия самого поиска также идентичны, передаются в параметр xmlParameters, и представлены структурой .OtapiSearchItemsParametersSearchItemsParameters (данная структура находится, например, в методе BatchSearchItemsFrame под полем "xmlParameters"). Посмотреть её содержимое можно кликнув по "Структура". Как и все структурные параметры, он имеет формат xml. xmlParameters в (Batch)SearchItemsFrame обязателен, так как он определяет, что собственно ищем. Примеры будут описаны далее.
...
В следующей таблице представлено сравнительное описание условий поиска, как они представлены в структуре параметров, и как они представлены в описании способов поиска.
Параметр | Условия поиска | Информация о способе поиска |
---|
Название параметра | Пример значения | Описание параметра | Название параметра | Пример значения | Описание параметра |
---|
Провайдер | Provider | Taobao | Если в условиях поиска не указан провайдер явно, он будет определен по другим условиям (например, категории). Если ни одно условие не определяет провайдера, поиск будет произведен в провайдере по умолчанию. Если разные условия поиска ведут к различным провайдерам, то такой поиск невозможен и приведет к ошибке. | Provider | Taobao | Идентификатор провайдера |
Способ поиска |
| SearchMethod | Official | Если не указано, используется определенный в настройках способ поиска по умолчанию. | SearchMethod | Official | Название способа поиска |
DisplayName | Фирменные товары (Tmall) | Отображаемое название способа поиска (на нужном языке) |
Flags |
|
| Список особенностей способа поиска |
Ограничения на число товаров | UseOptimalFrameSize | true/false | Признак использования оптимального размера фрейма вместо переданного. Если данное условие передано в значении true, то параметр frameSize игнорируется, и будет использовано OptimalFrameSize из выбранного способа поиска. |
| | | | | |
|
|
|
|
|
| OptimalFrameSize | 40 | Оптимальное число запрашиваемых товаров (размер страницы). Если использовать страницы данного размера, это обеспечивает максимальную возможную скорость работы поиска, т.к. оно соответствует размерам страниц у провайдера. |
| |
|
|
| MaximumFrameSize | 200 | Максимальное число товаров, которое можно получить за 1 запрос. Может работать значительно медленнее, чем при использовании оптимального числа. |
| |
|
|
| MaximumItemsCount | 4000 | Число товаров, до которого в принципе можно получить по одним и тем же условиям поиска. Чтобы получать больше товаров, надо менять и уточнять условия поиска. |
Сортировка товаров | OrderBy | Price:Asc | Если не указано, или указанное значение не входит в число допустимых, будет использована определенная в настройках сортировка по умолчанию. | AvailableSorts |
|
| Список допустимых сортировок в способе поиска. |
Категория | CategoryId | 16 | Идентификатор категории, в которой искать товары. | Category | true/false | Поддерживается ли поиск по категории |
Название товара | ItemTitle | платье | Поисковая строка по названию товара. Если в поисковой строке указаны только идентификатор (артикул) товара или ссылка на страницу на сайте провайдера, то будет найден и выдан именно этот единственный товар (или пусто, если таковой товар отсутствует). | Text | true/false | Поддерживается ли поиск по тексту |
LanguageOfQuery | ru | Язык поисковой строки по названию товара. Если не указан, считается равным языку выдачи товаров. Если не равен языку провайдера, то производится автоперевод на язык провайдера. |
Продавец | VendorId |
|
| Идентификатор продавца | Vendor | true/false | Поддерживается ли поиск по продавцу |
VendorName |
|
| Имя продавца |
Местонахождение продавца | VendorAreaId |
|
| Идентификатор местонахождения продавца (зоны) | VendorLocation | true/false | Поддерживает ли способ поиска местонахождение продавца |
Рейтинг продавца |
| |
|
|
| VendorRatingRange | true/false | Поддерживает ли способ поиска фильтр по рейтингу продавца |
MinVendorRating | 5 | Минимальное значение рейтинга продавца | MinVendorRating | 1 | Минимальное значение рейтинга продавца |
MaxVendorRating | 15 | Максимальное значение рейтинга продавца | MaxVendorRating | 20 | Максимальное значение рейтинга продавца ВАЖНО! Максимальное значение рейтинга у разных провайдеров разное. Его можно найти в доступных поисковых методах провайдера. |
Бренд | BrandId |
|
| Идентификатор искомой торговой марки | Brand | true/false | Поддерживает ли способ поиска бренды |
BrandPropertyValueId |
|
| Идентификатор значения искомой торговой марки (устаревший параметр, используйте BrandId) |
Цена | MinPrice | 10 | Минимальная цена | PriceRange | true/false |
| Поддерживает ли способ поиска фильтр по цене товара |
MaxPrice | 1000 | Максимальная цена |
CurrencyCode | CNY | Код валюты, в которой указан диапазон цен. По умолчанию считается первая витринная валюта. Для поиска конвертируется по обратным правилам наценок и курсов в валюту провайдера. |
Объем продаж | MinVolume | 100 | Минимальный объем продаж | VolumeRange | true/false | Поддерживает ли способ поиска фильтр по объему продаж |
MaxVolume | 500 | Максимальный объем продаж |
| | |
|
|
| VolumeRangeLogic | None / Range / OnlyMin / OnlyMax | Логика работы условий по объему продаж: диапазон, только минимум, только максимум. |
Минимальная партия | MinFirstLot | 5 | Минимальный размер первой партии товара | FirstLotRange | true/false | Поддерживает ли способ поиска фильтр по минимальной партии |
MaxFirstLot | 10 | Максимальный размер первой партии товара |
Состояние товара (новый, б/у, неиспользованый) | StuffStatus | New / Unused / Second | Состояние товара | StuffStatus | true/false | Поддерживает ли способ поиска фильтр по состоянию товара |
Характеристики товара (цвет, модель и тд) | Configurators |
|
| Список поисковых свойств, представленных структурой. | Configurators | true/false | Поддерживает ли способ поиска характеристики товара. |
MultipleConfiguratorLogic | None / All / And | Логика работы способа поиска по нескольким значениям одной характеристики. Использование в поиске нескольких значений одной характеристики. (например, можно вывести только красное, красное И зеленое, красное ИЛИ зеленое)
|
Особенности товара | Features |
|
| Список искомых специальных фильтров | Features |
|
| Список специальных фильтров, поддерживаемых способом поиска |
Поиск по фото | ImageUrl |
|
| Адрес изображения для поиска товаров | Module |
| Image | Параметры поиска по фото допустимы только в способе поиска, в котором свойство Module равно Image |
|
| Файловый идентификатор изображения для поиска товаров Используется, если искомое изображение сперва было загружено через OTAPI. |
Управление выдачей | OutputMode | Full / TotalCount / Provider | Режим выдачи результатов поиска. По умолчанию делается обычный поиск, с выдачей товаров и всего сопутствующего. Другие варианты: - TotalCount — Выдача только общего количества товаров, без самих данных о товарах. Тем самым можно получить общее количество по данным условиям поиска, и не тратить время на обработку самих товаров.
- Provider — Выдача только провайдера и способа поиска, которыми бы производился поиск, без самого поиска. Провайдер и способ поиска определяются на основе всех переданных условий поиска и различных настроек.
|
| |
|
|
|
CategoryMode | Nothing / External / InternalLeaf / CurrentLevel | Режим выдачи категорий в результатах поиска. В результатах поиска помимо товаров есть еще, хоть и не всегда, список категорий, в которых находятся найденные товары. Обычно они называются уточняющими категориями. Есть несколько вариантов обработки и выдачи данного списка. - Nothing — Отсутствие выдачи категорий (если они не нужны)
- External — Выдача внешних категорий как есть, без приведения к внутренним
- InternalLeaf — Приведение внешних категорий к внутренним конечным (в любом месте каталога)
- CurrentLevel — Приведение внешних категорий к внутренним категориям текущего уровня. Если поиск не по категории, то к корневым. Если поиск по категории, то к тем что внутри неё. Тем самым уточняющие категории никогда не выходят за рамки текущего уровня просмотра каталога.
|
| | | Устаревшие условия |
|
|
|
Устаревшие условия | IsTmall | true/false | Признак выбора только товаров из Tmall |
| | Примеры параметров с условиями поиска и запросов поиска
Пример | Значение xmlParameters | Тестовый запрос | Комментарий |
---|
20 товаров провайдера Таобао |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Taobao</Provider>
<CategoryId>0</CategoryId>
</SearchItemsParameters> |
| Пример в документации | Метод не выполнится без одного из обязательных параметров (CategoryId, VendorName, VendorId, ItemTitle, BrandId, Configurators), поэтому из GetProviderInfo берём RootCategoryId и передаём его в CategoryId (для поиска в корневой категории провайдера). Изменить количество искомых товаров (и другие параметры) можно перейдя по ссылке Пример в документации |
20 товаров провайдера Алибаба1688 |
из хранилища товаровпутём конкретного способа поиска |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Alibaba1688</Provider>
<CategoryId>abb-0</CategoryId>
<SearchMethod>Storage</SearchMethod>
</SearchItemsParameters> |
| Пример в документации |
В данном примере также возможны способы поиска по отзывам и фото (Reviews, Image)по ссылкеПо умолчанию, способ поиска выбирается автоматически (на основе настроек ключа и параметров поиска). Иногда его нужно указывать явно, как, например, при поиске по отзывам. Подробнее про способы поиска |
: . |
Поиск футболок с оптимальным для системы числом запрашиваемых товаров (размер страницы) |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<UseOptimalFrameSize>true</UseOptimalFrameSize>
</SearchItemsParameters> |
| Пример в документации | Подробнее про поиск с оптимальным для системы числом запрашиваемых товаров (размер страницы) можно найти в пункте "Ограничения на число товаров" |
по ссылкепо ссылкеВ frameSize передаём любое число больше 0. |
Сортировка 20 товаров Таобао по убыванию цены |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Taobao</Provider>
<CategoryId>0</CategoryId>
<OrderBy>Price:Desc</OrderBy>
</SearchItemsParameters> |
| Пример в документации | Подробнее про возможные способы сортировки |
: по ссылке. |
20 товаров провайдера Таобао отсортированные по кол-ву отзывов по убыванию |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Taobao</Provider>
<CategoryId>0</CategoryId>
<SearchMethod>Reviews</SearchMethod>
<OrderBy>ReviewCount:Desc</OrderBy>
</SearchItemsParameters> |
| Пример в документации | Только при наличии модуля «Отзывы». Подробнее про возможные способы сортировки |
: : по ссылке. |
Поиск по внутренней категории otc-4 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<CategoryId>otc-4</CategoryId>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по категории 50000671 провайдера Taobao |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Taobao</Provider>
<CategoryId>50000671</CategoryId>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по категории с Alibaba1688 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<CategoryId>abb-1031918</CategoryId>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск первых 100 товаров по запросу «красная футболка» |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>красная футболка</ItemTitle>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск на оригинальном языке: 红色T恤 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>红色T恤</ItemTitle>
<LanguageOfQuery>zh-chs</LanguageOfQuery>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск на русском языке — «красная футболка» |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>красная футболка</ItemTitle>
<LanguageOfQuery>ru</LanguageOfQuery>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск на английском языке — Red T-shirt |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>red t-shirt</ItemTitle>
<LanguageOfQuery>en</LanguageOfQuery>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по английскому слову (без перевода на китайский): 3D Vision |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>3D Vision</ItemTitle>
<LanguageOfQuery>zh-chs</LanguageOfQuery>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по артикулу: 583346884671 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>583346884671</ItemTitle>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по ссылке с Alibaba1688 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>
https://detail.1688.com/offer/530220113667.html
</ItemTitle>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск по продавцу: maxmartin玛玛绨旗舰店 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<VendorId>maxmartin玛玛绨旗舰店</VendorId>
</SearchItemsParameters> |
| Пример в документации | Значение для параметра VendorId (идентификатор продавца) можно найти, например, в данных любого товара. |
Поиск футболки по рейтингу |
продавца не меньше 19продавца не меньше 19 Важно: Максимальное значение рейтинга продавца у разных провайдеров разное. Его можно найти в доступных поисковых методах провайдера. | |
code | firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<MinVendorRating>19</MinVendorRating>
</SearchItemsParameters> |
| Пример в документации |
В данном конкретном примере единственный провайдер Таобао и максимальный рейтинг продавца у этого провайдера 20 |
Поиск по названию бренда: vero moda
|
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<BrandId>29902</BrandId>
</SearchItemsParameters> |
| Пример в документации | |
Поиск футболок с ограниченной стоимостью: от 10 до 40 юаней |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<CurrencyCode>CNY</CurrencyCode>
<MinPrice>10</MinPrice>
<MaxPrice>40</MaxPrice>
</SearchItemsParameters> |
| Пример в документации | В выборку попадают товары со скидочной ценой (PromotionPrice). Валюта (если не передана в явном виде) берётся из витрины (первая валюта) и конвертируется. |
Поиск футболки с ценой в долларах (эквивалент) не выше 3 |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<MaxPrice>3</MaxPrice>
<CurrencyCode>USD</CurrencyCode>
</SearchItemsParameters> |
| Пример в документации | Код валюты (CurrencyCode) берём в GetCurrencyInstanceList или в GetInstanceCurrencyInfoList |
Поиск футболки с минимальным объёмом продаж 50 штук |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<MinVolume>50</MinVolume>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск футболки с минимальной партией заказа от 5 штук |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Alibaba1688</Provider>
<ItemTitle>футболка</ItemTitle>
<MinFirstLot>5</MinFirstLot>
</SearchItemsParameters> |
| Пример в документации | Только для Alibaba1688 |
Поиск футболки с максимальной партией заказа 1 штука (аналог заказа в розницу) |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<Provider>Alibaba1688</Provider>
<ItemTitle>футболка</ItemTitle>
<MaxFirstLot>1</MaxFirstLot>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск только новых футболок |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<StuffStatus>New</StuffStatus>
</SearchItemsParameters> |
| Пример в документации | На данный момент работает 2 состояния: новый и б/у. New: Новый Second: Б\У
|
Поиск по характеристике: футболка размера XL, красного цвета |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<Configurators>
<Configurator Pid="20509" Vid="28317" />
<Configurator Pid="1627207" Vid="13535612018" />
</Configurators>
</SearchItemsParameters> |
| Пример в документации | - При помощи BatchGetItemFullInfo находим атрибуты для конкретного товара (в примере - id 646674173023) (<Attributes> )
<ItemAttribute Pid="20509" Vid="28317"> (для размера XL) <ItemAttribute Pid="1627207" Vid="13535612018"> (для цвета “красный”) |
по ссылке |
Поиск футболок со скидкой |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<Features>
<Feature Name="Discount">true</Feature>
</Features>
</SearchItemsParameters> |
| Пример в документации | Список возможных особенностей (фич) можно взять из пункта №2 в документации. |
Поиск футболок в наличии |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<Features>
<Feature Name="IsStock">true</Feature>
</Features>
</SearchItemsParameters> |
| Пример в документации |
TMallTмall |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ItemTitle>футболка</ItemTitle>
<Features>
<Feature Name="Tmall">true</Feature>
</Features>
</SearchItemsParameters> |
| Пример в документации |
|
|
Поиск товаров в категории "платья" с отзывами после покупки |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<CategoryId>162104</CategoryId>
<SearchMethod>Reviews</SearchMethod>
<Features>
<Feature Name="PurchasedItemReviews">true</Feature>
</Features>
</SearchItemsParameters> |
| Пример в документации | Только при наличии модуля «Отзывы». |
Поиск по |
ImageUrlизображению |
Блок кода |
---|
language | xml |
---|
firstline | 1 |
---|
linenumbers | true |
---|
collapse | true |
---|
| <SearchItemsParameters>
<ImageUrl>
https://img.alicdn.com/imgextra/i1/529782397/O1CN01qnZeTY1TZs3xAcmOv_!!529782397.jpg
</ImageUrl>
</SearchItemsParameters> |
| Пример в документации |
| Поиск по ImageFileId | | | Подробности по ссылке
Описание результатов поиска
Результаты поиска представлены структурой OtapiItemSearchResult, ниже описание её полей.
Параметр | Описание |
---|
Items | Список найденных товаров с указанием полного числа товаров |
Categories | Список категорий, в которых есть искомые товары (уточняющие товары) |
Brands | Список брендов, в которых встречаются товары (уточняющие бренды) |
TranslatedItemTitle | Текст, по которому реально искались товары (переведенный на язык провайдера) |
Provider | Товарный провайдер, в котором был произведен поиск |
SearchMethod | Способ поиска, которым был произведен поиск |
CurrentSort | Реальная текущая сортировка |
CurrentFrameSize | Реальный текущий размер фрейма (страницы) |
MaximumPageCount | Максимальное число страниц в поиске |
IsFoundByItemId | Если true, то в результатах поиска содержится 1 товар, который был найден по артикулу или ссылке |
...
Дополнительные блоки информации в BatchSearchItemsFrame
Используя метод BatchSearchItemsFrame, можно получить дополнительную информацию за тот же один запрос к OTAPI. Список дополнительных блоков передается в параметре blockList, через запятую. Результатом является BatchItemSearchResult, который включает в себя обычный OtapiItemSearchResult, а также все свойства для дополнительной информации.
Название блока | Описание |
---|
SubCategories | сразу получить подкатегории, если поиск был по категории |
SearchProperties | сразу получить фильтры по характеристикам/свойствам |
RootPath | сразу получить путь к корню, если поиск был по категории |
Vendor | сразу получить информацию о продавце, если поиск был по продавцу |
Brand | сразу получить информацию о бренде, если поиск был по бренду |
Category | сразу получить информацию о категории, если поиск был по категории |
HintCategories | сразу получить подходящие по названию категории, если поиск был по тексту |
AvailableSearchMethods | сразу получить список подходящих под данные параметры способов поиска, и всю информацию по ним |
...