All-in-one TikTok Shop scraper: search products by keyword, browse categories, get full product details with variants & reviews, seller info, and creator analytics (GMV, sales, engagement). Fast
Fixed product, reviews and store modes returning captcha errors. curl_cffi's impersonate="chrome" alias follows the newest profile in the installed library (0.15.0 → chrome146), and TikTok blocks the TLS fingerprints of recent Chrome builds — PDP and store pages answered with a captcha on every request. The profile is now pinned to chrome124 (IMPERSONATE in src/signer.py).
Reviews now come from the product page itself (review_info in the SSR payload) instead of the reviews API, which answers code=10000 for signed and unsigned requests alike. Total review count and the full star breakdown stay exact; sorting, filtering and the item limit are applied to the reviews we actually have. The API is still tried when more reviews are requested than the page carries, so extra pages are picked up automatically if TikTok reopens it.
Product mode with includeReviews no longer makes a second request or starts the signer — the reviews ship with the product page response.
Added the bundled signer/fingerprint.json fallback. Bablosoft turned its fingerprint endpoint into a paid one ({"valid":false,"message":"Key is empty"}), and the fallback pointed at a file that did not exist, so category and store runs failed outright. Sessions no longer waste retries on that endpoint either.
Target pages are now always the session's first request. A session that already carried a ttwid cookie from the warmup GET got a captcha on product and store pages.
0.1 (2026-07-07)
Six scrape modes in one Actor: search keywords, category URLs, product detail URLs, product reviews, store URLs, and creator usernames.
Search and category modes return product cards with productId, title, currentPrice, originalPrice, discountPercent, rating, reviewCount, salesVolume, sellerName, tags, imageUrls, and searchRank.
Product detail mode returns full data: description, category, price range, variants (SKUs with per-variant price and stock), specifications, selling points, brand, shipping info, seller/shop stats, and experience scores. Optionally embeds full reviews via includeReviews.
Reviews mode outputs one dataset item per review with reviewId, reviewerName, rating, text, date, variant, country, verified-purchase flag, images, and product-level ratings breakdown.
Store mode returns shop analytics (ratings, sold counts, followers, sub-scores, identity label) plus scraped store products and an estimated GMV summary.