Lightweight asynchronous Python client library for accessing Vinted API and scraping item data.
Project description
✨ Features
- 🚀 Asynchronous - Built with asyncio for high performance
- 🌍 Multi-locale - Supports multiple Vinted domains (FR, DE, US, etc.)
- 🔍 Item Search - Search catalog with filters and pagination
- 📦 Item Details - Get complete item information
- 🍪 Cookie Persistence - Automatic session management
- 🔐 Proxy Support - Built-in proxy configuration
- 📊 Type Hints - Full typing support for better IDE experience
📚 Table of Contents
Installation
Install via pip:
pip install vinted-api-kit
Or using poetry:
poetry add vinted-api-kit
Quick Start
import asyncio
from vinted_api_kit import VintedApi, CatalogItem, DetailedItem
async def main():
async with VintedApi(locale="fr") as vinted:
# Get detailed item information
item_detail: DetailedItem = await vinted.item_details(
url="https://www.vinted.fr/items/922704975-adidas-x-15"
)
print(f"📦 {item_detail.title}")
print(f"💰 {item_detail.price}\n")
# Search for items
items: list[CatalogItem] = await vinted.search_items(
url="https://www.vinted.fr/catalog?search_text=adidas",
per_page=5
)
print("🔍 Search results:")
for item in items:
print(f" • {item.title} - {item.price} {item.currency}")
if __name__ == "__main__":
asyncio.run(main())
Configuration
Basic usage
from vinted_api_kit import VintedApi
async with VintedApi(locale="fr") as vinted:
pass
Advanced configuration
from vinted_api_kit import VintedApi
async with VintedApi(
locale="de",
proxies={"http": "http://proxy:8080"},
client_ip="192.168.1.1",
cookies_dir="./cookies",
persist_cookies=True
) as vinted:
pass
Parameters:
locale- Vinted domain locale ('fr','de','us', etc.)proxies- Proxy configuration (requests format)client_ip- Override client IP headercookies_dir- Directory for cookie storagepersist_cookies- Enable/disable cookie persistence
These can be set when creating an instance of the VintedApi class.
No additional environment variables are required by default.
🛠️ Development
Setup
git clone https://github.com/vlymar1/vinted-api-kit.git
cd vinted-api-kit
Install dependencies (you'll need to set up your dev environment)
Testing
make test-coverage # run tests with coverage
make test-coverage-view # view coverage report in browser
Code Quality
make lint-check # check code with ruff and mypy
make lint-reformat # format and fix code with ruff
Cleanup
make clean # remove cache files and build artifacts
Development Guidelines:
- Follow PEP8 style guidelines
- Configure ruff in
pyproject.tomlfor your preferred rules - Set up pre-commit hooks for automatic linting
- Contributions welcome! Please open issues or pull requests
Changelog
See CHANGELOG.md for the list of notable changes per version.
How to create and maintain changelog?
- Start a
CHANGELOG.mdfile at the root of your repo. - Follow Keep a Changelog format for consistent structure.
- For each release version, record:
- Added — new features
- Changed — updates/improvements
- Fixed — bug fixes
- Removed — deprecated or removed features
- Update changelog before tagging a new release (e.g.,
v1.0.0). - Automate changelog generation optionally by tools such as:
- github-changelog-generator
- auto-changelog
- Conventional commits combined with semantic-release
License
This project is licensed under the MIT License - see the LICENSE file for details.
Maintainers / Contacts
- GitHub: https://github.com/vlymar1
Feel free to open issues or contact for support and collaborations.
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 vinted_api_kit-0.1.0.tar.gz.
File metadata
- Download URL: vinted_api_kit-0.1.0.tar.gz
- Upload date:
- Size: 45.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ba05d87a0259cc6bd5a006a45ebc6820eb4d969ffcd365a8b5a11ec4ce4b77a
|
|
| MD5 |
4a628b1e5084727b5ba4c94c6a89a4ee
|
|
| BLAKE2b-256 |
1a165d5a4be97c11f4eb8d0843a4253393578cab0eb715c1408b58cf5db5cc33
|
File details
Details for the file vinted_api_kit-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vinted_api_kit-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bbde83e250c1ab6352e1f6ad91f0d34d503556af4a7ab52d9126219ba46d417
|
|
| MD5 |
b1b7fdec42992b6a3605dd65baab86c5
|
|
| BLAKE2b-256 |
89814e72299088909901cff51f16c44c13bf76be064a78adbceb967ab49bcdec
|