# Changelog of Alibaba Scraper 🛒 Supplier Sourcing (MOQ, tiered price, trust) (`tagadanar/alibaba-scraper`) Actor

- **URL**: https://apify.com/tagadanar/alibaba-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/tagadanar/alibaba-scraper.md

## Changelog

### 2026-09-08

- **Fixed: a European-formatted price was read a thousand times too low.** The
  number parser stripped every comma before reading, so `US $1.234,56` became
  `1.234`. Alibaba is fetched over a residential proxy with no country pin, so
  the number format it renders varies from run to run. Prices now read correctly
  in both conventions: `1.234,56` and `1,234.56` are the same number, while
  `1,500` stays fifteen hundred.

### 2026-08-29

- **Fixed: a short run gave up after one proxy attempt.** The time guard priced
  every retry at its worst case — a full 60-second timeout — and refused to
  start a retry it could not fit five times over. On a run with about a hundred
  seconds left that allowed exactly one attempt, so the run asked once, met
  Alibaba's slider challenge in a fraction of a second, and stopped there
  without ever rotating to the fresh exit IP that clears it. The actor now
  measures the time each attempt actually takes: every exit and browser
  fingerprint is tried while the clock allows, and only a genuinely spent run
  stops early.
- **Fixed: a run that ran out of time said it had been challenged.** The status
  message blamed Alibaba's velocity gate "after every proxy exit and browser
  fingerprint was rotated" when a single attempt had been made. A run stopped by
  the clock now reports the clock — "N of M proxy attempts tried before the
  crawl box closed" — says plainly that it cannot tell whether Alibaba would
  have served the page, and charges nothing for it. The gate verdict is reserved
  for a rotation that really was walked to the end.
- The run now watches its own clock. Long searches used to be killed by the
  platform timeout mid-page, losing every product that had not been pushed yet.
  The actor now stops walking pages while there is still time to charge and
  deliver what it collected, and ends **successfully** with a status message
  saying "Stopped at the run time limit: N rows delivered, raise the run
  timeout or lower maxResults."
- Page and supplier-storefront fetches are bounded by the time actually left,
  not by a fixed retry ladder. A single slow page could previously burn five
  minutes of retries past the point where the run still had time for it.
- Honest limits in the input form: **Max products** now tops out at 4,000
  (100 result pages × ~40 products — the real depth of one Alibaba search)
  instead of advertising 100,000 that no run could reach, and **Search terms or
  URLs** accepts up to 20 entries per run. With **Add supplier trust profile**
  on, the realistic reach of an hour-long run (~800 products) is now stated.
- Every run now ends with a status message instead of finishing silently — and
  a run that was challenged, cut short by the clock or stopped by your charge
  limit says which, instead of looking like an empty search.

### 2026-07-13

- README: added the missing Pricing section, disclosing per-event prices and the $0.001 actor-start fee.

### 2026-07-12

- Invalid input no longer fails the run. The run now finishes cleanly with a clear explanation in its status message, so a typo or an empty list is easy to spot and fix.
- List inputs now accept datasets piped straight from another scraper: entries
  that are objects are read through their usual key names (url/link,
  query/keyword/title, name/company and similar) instead of being rejected.

### 0.1.1

- Moved to one flat all-in price: platform usage is now included, so there is a
  single price per product delivered and no separate usage bill to reconcile.
- Removed the proxy setting from the input. The actor now handles finishing a run
  entirely on its own, with nothing to configure.

### 0.1.0

First release. Scrape Alibaba.com by keyword, search URL or product URL and get:

- Product title, link, image, price and price range, currency, and tiered MOQ
  pricing when the listing publishes a price ladder.
- Minimum order quantity, both as a number and as shown.
- Supplier name, storefront link, country, and Verified membership tenure.
- Trust signals: Verified Supplier, Trade Assurance, top/crown supplier, and the
  product certifications shown on the listing (CE, FCC, RoHS and the like).
- Buyer review score and count.
- Optional supplier trust profile: opens each supplier's storefront for Verified
  tenure, Trade Assurance, response rate and business type. Billed only when a
  profile is returned.

Paced and rotating so a search finishes with a full set of results instead of
stalling partway. Flat JSON output, no API key.
