Асинхронная библиотека для ABCP API
Project description
AioAbcpApi
Асинхронная библиотека для API ABCP с asyncio и aiohttp
Присоединяйтесь к телеграм чату
Установка
pip install aioabcpapi
Описание
Все методы максимально приближены к древовидному оформлению официальной документации.
Разделяются на cp и ts, они в свою очередь разделяются на client и admin, далее для поиска нужного вам метода
отталкивайтесь от документации API ABCP.
Для примера, из документации TS.Client, Обновление позиции в корзине описание операции следующее:
Операция: POST /ts/cart/update
Для использования этого метода нам нужно будет обратиться к await api.ts.client.cart.update()
Доступ к API
Если вы являетесь клиентом магазина на платформе ABCP, обратитесь к вашему менеджеру. (Вам понадобится статический IP адрес)
Примечание
Все аргументы времени, такие как create_time, update_time, date_start, date_end и прочие, принимают str или datetime. При передаче datetime объект будет преобразован в зависимости от требований метода в RFC3339 или "%Y-%m-%d %H:%M:%S"
Пример
import asyncio
from aioabcpapi import Abcp
host, login, password = 'id33333', 'api@id33333', 'md5hash'
api = Abcp(host, login, password)
async def search_some_parts(article, brand):
search_result = await api.cp.client.search.articles(number=article, brand=brand,
use_online_stocks=True,
disable_online_filtering=True,
with_out_analogs=True)
for x in search_result:
if float(x['price']) < 3000:
print('Похоже на чудо, но скорее ошибка прайса. Отключим пока поставщика')
await api.cp.admin.distributors.edit_status(x['distributorId'], False)
elif float(x['price']) < 37000:
await api.cp.client.basket.add(basket_positions={'number': x['article'],
'brand': x['brand'],
'supplierCode': x['supplierCode'],
'itemKey': x['itemKey'],
'quantity': 1,
'comment': f"Да, РРЦ никто не любит"})
if __name__ == '__main__':
asyncio.run(search_some_parts('602000600', 'LuK'))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aioabcpapi-2.2.0.tar.gz.
File metadata
- Download URL: aioabcpapi-2.2.0.tar.gz
- Upload date:
- Size: 69.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
04de65ace026c0ed0fbf7690277ea86e723c39a56174d35704fe05be34a01cfb
|
|
| MD5 |
9dccdf56324f94ae6372c77026ccc60f
|
|
| BLAKE2b-256 |
926525825b7c95f0e4fbe3ffce40560a02abf684606d6c766e8e93ce0c25fdb4
|
File details
Details for the file aioabcpapi-2.2.0-py3-none-any.whl.
File metadata
- Download URL: aioabcpapi-2.2.0-py3-none-any.whl
- Upload date:
- Size: 73.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
039328db6952b4a9cc486f48ab1d694b75c994bca4f280e9ca9986d70e6686ed
|
|
| MD5 |
27c75b5d5e8803d35f77673d7f0642f7
|
|
| BLAKE2b-256 |
31140841139f78b1c02680079eee14475f40ca76c3da7ea20a8b116f0c151055
|