# Changelog of AliExpress Scraper (`logical_scrapers/aliexpress-scraper`) Actor

- **URL**: https://apify.com/logical\_scrapers/aliexpress-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/logical\_scrapers/aliexpress-scraper.md

## Changelog

### v1.1 — Crawlee Migration + Pagination Fix

#### New Features

- **Crawlee ParselCrawler integration** — migrated from raw httpx to Crawlee's managed request infrastructure while keeping the same lightweight httpx + parsel approach
  - Automatic request retries (3 attempts per request)
  - Session rotation on blocked responses
  - Concurrency management via AutoscaledPool
  - Request queue with built-in deduplication
- **Category page support** — scrape `/category/*/` URLs alongside search URLs
- **Per-URL item limits** — `maxItems` now applies independently to each URL (e.g. `maxItems=100` with 3 URLs = up to 300 total products)
- **Automatic pagination** — pages are enqueued dynamically until `maxItems` is reached per URL

#### Input Schema Changes

- `search_url` renamed to `startUrls` — accepts multiple search and category URLs
- `maxPages` renamed to `maxItems` — set the number of products you want, not pages
- New `proxyConfiguration` field — configure Apify Proxy directly from the input

#### Bug Fixes

- Fixed pagination calculation that was off by one when enqueueing additional pages
- Fixed per-URL item counter not matching across paginated pages (source URL key mismatch)
- Made `store` field optional — AliExpress no longer includes store info in listing data

#### Technical

- Replaced manual `asyncio.gather` pagination with Crawlee's request queue
- Switched to `SessionError` for blocked responses to trigger automatic retries
- Headers must be wrapped in `HttpHeaders()` (Crawlee RootModel) — plain dicts cause serialization errors
- Dependencies: `crawlee[parsel]`, `apify >= 2.0.0, < 3.0.0`, pinned `pydantic < 2.12.0` and `browserforge < 1.2.4`

***

### v1.0 — Initial Release

- AliExpress search page scraping via httpx + parsel
- Product data extraction: id, title, price, currency, trade, thumbnail, store
- Multi-URL support with `search_url` input
- Apify Proxy integration for residential IP rotation
