Loot South Africa Scraper
Pricing
from $3.00 / 1,000 results
Loot South Africa Scraper
Scrape Loot (loot.co.za) - a leading South African online marketplace covering books, electronics, toys, baby, fashion, home & kitchen, games, DVDs and more. Search products, browse by department/category, look up exact products by code/URL, and list the full category taxonomy.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
Scrape Loot — a leading South African online marketplace covering books, electronics, computers, toys, baby products, fashion, kitchen & home, games, DVDs, sport & outdoor, stationery, health & beauty and licensed merchandise. Search products, browse any of the site's 20 departments and their subcategories, look up exact products by code or URL, or list the full category taxonomy. HTTP-only via the store's own public JSON API. No login, no proxy, no cookies you have to supply.
What this actor does
- Four modes:
search,byCategory,byProductCodes,listCategories - Search across the whole marketplace or scoped to a department, with server-side price/stock/special filtering plus client-side brand/keyword refinement
- Category browse across all 20 top-level departments (Books, Electronics, Baby, Toys, Fashion, Kitchen & Home, Games, DVD, Blu-Ray, Sport, Outdoor, Stationery, Health & Beauty, Music, DIY, Arts & Crafts, Licensed Merchandise, Deals, Promotions) plus any subcategory via an exact code override
- Filters: min/max price, in-stock only, on-special only, brand, sort order
- Rich product data: price, list-price/discount, stock/availability, rating, seller, full image gallery, plain-text description, bullet features, and a structured
specificationsblock (grouped spec tables — e.g. Display/Power/Ports for electronics, Authors/ISBN/Format for books) - Empty fields are omitted — no
null/""/[]ever shipped
Output per product
productId,title,fullTitle,subtitle,slug,itemTypebrand,categoryprice,currency(ZAR)listPrice,discountPercent— when the product is on specialavailability,availabilityMessage,inStock,shipsForFreeavailableQuantity— units currently in local stock (0can still mean orderable from the supplier — seeavailability)itemsLeftOnDeal— units left on a limited-time deal (only present when the deal has a visible countdown)minLeadTimeDays,actualLeadTimeDays— estimated shipping lead time in working daysnonReturnable,groupOffer— return-policy and bundle-offer flagspayflexAvailable,payJustNowAvailable— buy-now-pay-later payment optionsmonthlyRepayment,repaymentInterestRate— installment financing terms (when offered)rating,ratingCountbarcode,sellermainImage,images[]description,features[]specifications— nested{group: {key: value}}, e.g.{"Display": {"Screen Size": "15.6\"", ...}, "General": {"Authors": "J. K. Rowling", "ISBN-13": "978-...", ...}}relatedProductIds[]— codes of related/recommended products (mode=byProductCodes only, where the full product-detail response is fetched)reviews[]— approved customer reviews (mode=byProductCodes only):{reviewId, title, text, rating, reviewer, date}sourceUrlrecordType: "product",scrapedAt
Output per category (mode=listCategories)
categoryCode,name,parentCode,parentNamesourceUrl,browseUrlrecordType: "category",scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | search | search / byCategory / byProductCodes / listCategories |
searchQuery | string | harry potter | Free-text query (mode=search) |
categoryCode | string | qb (Books) | Curated department dropdown (mode=byCategory) |
customCategoryCode | string | – | Exact category code for any subcategory; overrides the dropdown |
productCodes | array | – | Product codes or full product URLs (mode=byProductCodes) |
minPrice / maxPrice | number | – | Price range in ZAR |
inStockOnly | bool | false | Only in-stock products |
onSpecialOnly | bool | false | Only discounted products |
brand | string | – | Case-insensitive brand substring match |
keyword | string | – | Case-insensitive substring match against title/brand/description — extra refinement on any mode |
sortBy | string | relevance | relevance / priceAsc / priceDesc / titleAsc / titleDesc / ratingDesc |
includeSubCategories | bool | true | Also fetch each department's subcategories (mode=listCategories) |
maxItems | int | 50 | Hard cap (1–1000) |
Example: search with price + stock filters
{"mode": "search","searchQuery": "wireless earphones","minPrice": 200,"maxPrice": 1500,"inStockOnly": true,"sortBy": "priceAsc","maxItems": 40}
Example: browse a department
{"mode": "byCategory","categoryCode": "jgj","onSpecialOnly": true,"sortBy": "priceDesc","maxItems": 50}
Example: search, refined further by a client-side keyword filter
{"mode": "search","searchQuery": "wizard","keyword": "potter","maxItems": 50}
Example: browse a subcategory not in the curated dropdown
{"mode": "byCategory","customCategoryCode": "hgz","maxItems": 50}
Example: lookup exact products
{"mode": "byProductCodes","productCodes": ["cwxj-7974-g400","https://www.loot.co.za/product/hermione-granger-wizard-wand/pxml-4917-g790"]}
Example: list the category taxonomy
{"mode": "listCategories","includeSubCategories": true,"maxItems": 200}
Use cases
- Price monitoring — track book, electronics and toy prices on South Africa's biggest general marketplace
- Competitor / market research — benchmark a South African e-commerce catalogue, pricing and specials
- Product feed building — import books, electronics or gifts into a comparison site or marketplace
- Stock availability tracking — flag when a popular item goes out of stock
- Category / taxonomy analysis — enumerate every department and subcategory
FAQ
Do I need a proxy or login? No. Loot issues a short-lived anonymous access token to every visitor automatically (the same mechanism your browser gets when you load the site) — the actor fetches this token itself at the start of each run. No signup, API key or user-supplied cookie is required.
What currency are prices in? ZAR (South African Rand).
What's discountPercent? Computed from listPrice (the pre-discount price) vs the current price, only present when the product is genuinely on special.
What's inside specifications? Loot groups technical/bibliographic details differently per product type — electronics get groups like Display/Power/Ports/Physical Specification, books get General (Authors, ISBN-13, Format, Pages, Imprint), etc. The actor preserves this grouping rather than flattening everything into one bucket.
How do I browse a category that isn't in the dropdown? Set customCategoryCode to the exact code from a loot.co.za search link (?cat=<code>) or from a mode=listCategories run — it overrides the dropdown.
Why does sortBy sometimes only sort within a candidate pool rather than the whole category? The actor fetches a bounded pool of matching products (5x maxItems, up to 200+) and sorts that pool itself, since the store's own sort parameter isn't reliably honored for every value. For very large categories with a small maxItems, increase maxItems if you need a true full-category top/bottom ranking.
Why did my keyword filter on byCategory return 0 results even though matching products exist in that category? Same root cause as sortBy above: byCategory has no server-side text search, so the actor's own default browse ordering for very large categories (millions of items for broad departments like Books) may not surface a niche keyword match within the fetched candidate pool. keyword is most reliable combined with mode=search (which does a real server-side text search first) or with a narrower customCategoryCode subcategory.
How fresh is the data? Real-time — every request hits the live storefront's own API.