5.0.0 - 2026-09-16
Fixed
- Move search to svc-catalogue endpoint by @Giglium in #216. BREAKING CHANGE, see the migration guide
- Dependabot auto merge GA by @Giglium
- Always run coverage GA by @Giglium in #218
Changed
Dependency
- Bump isort by @dependabot[bot] in #212
- Bump the github-actions group with 2 updates by @dependabot[bot] in #213
- Update uv-build requirement from <0.12.0,>=0.8.5 to >=0.8.5,<0.13.0 by @dependabot[bot] in #205
- Bump coverage in the python-dependencies group by @dependabot[bot] in #201
Migration guide: 4.x → 5.0
Do I need to change anything?
No, if you use the quickstart / basic usage. Constructing a simple client VintedScraper("https://www.vinted.com") and
calling search(), item() or curl() works exactly as before, the session is still fetched automatically.
You only need to change code that passed or read the session cookie manually, or that called refresh_cookie().
What changed
- The
session_cookieconstructor arguments is replaced byVintedSessionthat holds the cookie but also the new request tokens (a CSRF token + an anonymous id).
# Before (4.0.0)
scraper = VintedScraper("https://www.vinted.com", {"access_token_web": "..."})
# After (5.0.0)
from vinted_scraper import VintedScraper, VintedSession
scraper = VintedScraper(
"https://www.vinted.com",
session=VintedSession(cookies={"access_token_web": "..."}),
)- The
refresh_cookie()is nowrefresh_session(). It doesn't only refresh the cookie but also the new request tokens (a CSRF token + an anonymous id).
# Before (4.0.0)
cookies = scraper.refresh_cookie() # returned the cookies dict
# After (5.0.0)
session = scraper.refresh_session() # returns a VintedSession
cookies = session.cookiesNote
The CSRF token is a supported field, but it is not auto-fetched since the API currently accepts calls without it.