Этот скрипт используется для извлечения данных из API и сохранения их в базе данных SQLite. Он использует асинхронные методы для обработки запросов и сохранения данных, что позволяет эффективно использовать ресурсы и обрабатывать большое количество данных параллельно.
- Создайте файл
.env - Добавьте туда переменную
URL=""
Для работы скрипта требуется установить следующие зависимости:
aiohttp: для работы с HTTP запросами асинхронноaiosqlite: для работы с базой данных SQLite асинхронно
Установите зависимости с помощью следующей команды:
pip install aiohttp aiosqlite
или
pip install -r requirements.txt
Для запуска скрипта используйте команду:
python main.py --db <имя_файла_базы_данных> --request-limit <максимальное_ограничение_на_запросы>
--db: Имя файла базы данных SQLite, по умолчанию информация сохраняется в:products.csv-rl,--request-limit: Максимальное количество одновременных запросов, по умолчанию10
- Запуск с использованием базы данных
mydatabase.dbи ограничением в 5 параллельных запросов:
python main.py --db mydatabase.db -rl 5
- Запуск с использованием базы данных
custom.dbи ограничением в 8 параллельных запросов:
python main.py --db custom.db --request-limit 8
- Запуск без использования базы данных и ограничением в 20 параллельных запросов:
python main.py -rl 20
python main.py --db product.db -rl 10
Скрипт создает следующую структуру таблиц в базе данных:
categories: категории товаровsubcategories: подкатегории товаров, связанные с категориямиproducts: продукты, связанные с подкатегориямиoffers: предложения продуктовshops: магазины, где доступен товарoffer_shop_amount: информация о количестве товара в магазинах
Каждая таблица имеет свою структуру и связи между ними для хранения данных.
