Farfetch Scraper
Pricing
from $4.50 / 1,000 results
Farfetch Scraper
Scrape Farfetch luxury fashion: current and sale prices, designer, sizes, colours, stock status, images and every variant. Works on category, brand and product URLs, in the locale and currency of the URL you pass. Optional size-and-fit detail and recommended products. Pay per product saved.
Pricing
from $4.50 / 1,000 results
Rating
5.0
(1)
Developer
Richard Feng
Maintained by CommunityActor stats
10
Bookmarked
293
Total users
8
Monthly active users
10 hours ago
Last modified
Categories
Share
Farfetch Scraper crawls the Farfetch luxury fashion catalog: every category of a storefront, and products with their prices, sizes, stock, images and details, in every market and currency Farfetch serves.
For release history, see the CHANGELOG.md.
🎯 Features
- 🗂️ Every category of a storefront (
https://www.farfetch.com/,https://www.farfetch.com/jp/) or department (/shopping/women/,/shopping/men/,/shopping/kids/): one record per category with its path, product count and listing filters — and optionally every product in them. - 🔗 Listing URLs — category, designer, sale and set pages, with their filters — and product URLs, from any storefront.
- 🌍 Each storefront in its own country and currency, in any language it has: a
/uk/URL gives GBP prices, a/jp/URL JPY prices, and?lang=ja-JPJapanese titles. - 📦 Products with every size's own price and stock, designer, categories, highlights, composition, care instructions, country of manufacture and images.
- 📏 Optional size and fit (the product's fit advice and each size's measurements) and up to 12 recommended products per product.
💡 The price values are multiplied by 100 to avoid floating point calculations.
🔁 Upgrading from 1.x
Your input works unchanged, and every product field keeps its name and value type. What to check in your pipeline:
optionsstarts with the product's colour. A variant's size id is nowoptions[1], notoptions[0]. Look the Size option up by itstypeinstead of its position.- Listings come in a different order. The products and counts are the same, but a run capped by
maxRequestsPerCrawlgets a different selection of them. A listing sorted by price (sort=4in its URL) keeps the same order from run to run. Match products onsource.id. - More listings work, and more filters apply. Listing URLs 1.x could not open (search pages,
/shopping/women/knitwear-1/, …) now return products, and theattributes:filter narrows a listing instead of being ignored. More products saved means more charges: checkmaxRequestsPerCrawlor set a Max total charge on the run. - English on every storefront for
details.madeIn.origin("Made in Italy") anddetails.composition[].name("Outer"). Image URLs no longer end in?ov=true, and thecanonicalUrlof a short/item-<id>.aspxlink is the product's full page URL. - Two new fields,
source.languageandvariants[].sku. Allow them if you validate records against a strict schema. /zh-HK/,/zh-MO/and/zh-TW/are priced in HKD and TWD, as/hk/,/mo/and/tw/are;maxRequestsPerCrawl: 0means no limit.
The full list, with examples, is in the CHANGELOG.md.
📋 Input Parameters
The input of this scraper should be JSON formatted. Fields are:
| Field | Type | Default | Description |
|---|---|---|---|
| startUrls | Array | Farfetch URLs to start from. A storefront (https://www.farfetch.com/, https://www.farfetch.com/jp/) or department (/shopping/women/, /shopping/men/, /shopping/kids/) URL means every category of that storefront or department. Listing (category, designer, sale, set) and product URLs are supported from any storefront. A listing is always scraped from its first page. | |
| withCategoryProducts | Boolean | false | For storefront and department URLs, also scrape every product of every category, each product once. Off: category records only, one request per category. |
| withSizeFit | Boolean | false | Fetch the product's fit advice and each size's measurements, which slows the scraper down. |
| withRecommends | Boolean | false | Fetch recommended products, up to 12 per product. |
| maxRequestsPerCrawl | Integer | 100 | Maximum number of requests (category trees, listing pages, categories, products), 0 to ignore. A whole storefront is over 1,200 categories. |
| maxConcurrency | Integer | 5 | Actor running max concurrency (1–100), which helps you to not get blocked. |
| proxy | Object | Select proxies to be used by your crawler. Without a proxy setting the Actor uses Apify Proxy; with a proxy country, URLs without a storefront prefix are priced in that country's currency. |
🧪 Example:
{"startUrls": [{ "url": "https://www.farfetch.com/shopping/women/mules-1/items.aspx?page=1&view=90&sort=3&scale=274&attributes:11006=19500036&colour=13" },{ "url": "https://www.farfetch.com/jp/shopping/women/jacquemus-100mm-les-doubles-mules-item-28543291.aspx" }],"withSizeFit": true,"maxConcurrency": 5}
🗂️ Every category of the UK men's department (300 category records):
{"startUrls": [{ "url": "https://www.farfetch.com/uk/shopping/men/" }],"maxRequestsPerCrawl": 0}
Add "withCategoryProducts": true to also scrape their products — over 400,000 in the men's department,
so set maxRequestsPerCrawl or a Max total charge on the run.
🔗 Supported URL types
| Page | Example |
|---|---|
| 🏬 Storefront (all categories) | https://www.farfetch.com/, https://www.farfetch.com/jp/ |
| 🧭 Department (its categories) | https://www.farfetch.com/shopping/women/, https://www.farfetch.com/uk/shopping/men/ |
| 📁 Category | https://www.farfetch.com/shopping/women/mules-1/items.aspx, https://www.farfetch.com/shopping/women/items.aspx?category=198938 |
| 🏷️ Designer | https://www.farfetch.com/shopping/women/agolde/items.aspx, https://www.farfetch.com/shopping/women/agolde/clothing-1/items.aspx |
| 💸 Sale | https://www.farfetch.com/shopping/women/sale/all/items.aspx, https://www.farfetch.com/shopping/women/sale/mules-1/items.aspx |
| ✨ Set | https://www.farfetch.com/sets/new-in-this-week-eu-women.aspx |
| 🛍️ Product | https://www.farfetch.com/shopping/women/jacquemus-100mm-les-doubles-mules-item-28543291.aspx, with or without ?storeid=, or the short https://www.farfetch.com/item-15804667.aspx |
Listing URLs keep their filters: designer, category, colour, price, discount, size scale, sort order,
attributes (attributes:11006=19500036), exclusive, promotion and tags. The shipping-from,
delivery-speed, sustainability-label and size filters are not applied; the run log lists any it skips.
The storefront in the URL decides the country and currency. Records are in US English, except on the
storefronts Farfetch writes only in their own language: British English on /uk/, and the local
language on /de/, /at/, /li/, /dk/, /es/, /ic/, /it/, /nl/ and /se/. ?lang= switches
the language as it does on the website:
| URL | Storefront |
|---|---|
| https://www.farfetch.com/shopping/women/clothing-1/items.aspx | United States, USD, en-US |
| https://www.farfetch.com/uk/shopping/women/clothing-1/items.aspx | United Kingdom, GBP, en-GB |
| https://www.farfetch.com/de/shopping/women/clothing-1/items.aspx | Germany, EUR, de-DE |
| https://www.farfetch.com/jp/shopping/women/clothing-1/items.aspx | Japan, JPY, en-US |
| https://www.farfetch.com/jp/shopping/women/clothing-1/items.aspx?lang=ja-JP | Japan, JPY, ja-JP |
A URL without a storefront prefix is priced in the proxy's country when the run sets one
(apifyProxyCountry), on the same www.farfetch.com pages in US English.
📤 Data storage
Products and categories are stored in the default dataset. A product record has source; a category
record has handle and productsCount instead (the Apify Console shows them in separate views).
🛍️ Product
A product start URL with every option enabled. Each size is a variant, the sizes in stock first. A size
on offer is priced at the offer Farfetch shows for it, and its stockCount adds up every merchant's stock
of it; the product's price is its cheapest size in stock. A size nobody has on offer is out of stock at
that price, and a product nobody has on offer has all its sizes out of stock at 0, without
currentFormatted. options starts with the product's colour — Farfetch sells each colour as a
product of its own, so the colour option has one value, the designer's colour — followed by its sizes,
and each variant's options lists the colour id, then the size id. With withSizeFit, a variant's
extraInfo carries fit, the product's fit advice (such as
[{ "type": "1# Fitting phrase", "description": "This piece fits small – take half a size up", "__typename": "FittingInformation" }]measurements in centimetres and inches; each is null when Farfetch has none. Each recommended
product's raw is shaped like the website's catalog item. Arrays are shortened below.
{"source": {"id": "28543291","crawlUrl": "https://www.farfetch.com/shopping/women/jacquemus-100mm-les-doubles-mules-item-28543291.aspx?storeid=9155","canonicalUrl": "https://www.farfetch.com/shopping/women/jacquemus-100mm-les-doubles-mules-item-28543291.aspx","retailer": "farfetch","language": "en-US","currency": "USD"},"brand": "Jacquemus","title": "Les Doubles sandals","description": "Les Doubles sandals","details": {"short_desc": "Les Doubles sandals","full_desc": null,"highlights": ["camel brown","square open toe","high sculpted heel"],"composition": [{"name": "Outer","materials": [{"name": "Calf Suede","value": "100%"}]},{"name": "Sole","materials": [{"name": "Calf Leather","value": "100%"}]},{"name": "Lining","materials": [{"name": "Calf Leather","value": "100%"}]}],"farfetchID": "28543291","brandStyleID": "243FO1604355","care": {"Washing instructions": ["Read Manufacturer Guidelines"]},"madeIn": {"origin": "Made in Italy","disclaimers": null}},"categories": ["Women","Shoes","Sandals","Heeled Sandals"],"options": [{"type": "Colour","values": [{"id": "119175911","name": "830|CAMEL"}]},{"type": "Size","values": [{"id": "9","name": "36"},{"id": "11","name": "37"},{"id": "13","name": "38"}]}],"variants": [{"id": "e5701adf-85fd-4a68-ae2c-8136afe01e3b","options": ["119175911","9"],"price": {"current": 67700,"currentFormatted": "$677","original": 127100,"stockCount": 3,"stockStatus": "InStock"},"medias": [{"type": "Image","url": "https://cdn-images.farfetch-contents.com/28/54/32/91/28543291_57846182_1000.jpg","alt": "Jacquemus Les Doubles sandals","index": 1}],"extraInfo": {"fit": null,"measurements": [{"type": "WEIGHT","name": "HEEL","imperial": {"raw": 3.93,"formatted": "3.93 in","__typename": "GenericValue"},"metric": {"raw": 10,"formatted": "10 cm","__typename": "GenericValue"},"__typename": "Measurement"}]},"label": null,"sku": "1\\4\\4\\409549\\852356\\0"},{"id": "b22bead0-e92a-4225-9b8f-f7ec6b03e7cc","options": ["119175911","11"],"price": {"current": 115000,"currentFormatted": "$1,150","original": 171300,"stockCount": 1,"stockStatus": "InStock"},"medias": [{"type": "Image","url": "https://cdn-images.farfetch-contents.com/28/54/32/91/28543291_57846182_1000.jpg","alt": "Jacquemus Les Doubles sandals","index": 1}],"extraInfo": {"fit": null,"measurements": [{"type": "WEIGHT","name": "HEEL","imperial": {"raw": 3.93,"formatted": "3.93 in","__typename": "GenericValue"},"metric": {"raw": 10,"formatted": "10 cm","__typename": "GenericValue"},"__typename": "Measurement"}]},"label": null,"sku": "243FO1604355_830_37_251038058600288"}],"medias": [{"type": "Image","url": "https://cdn-images.farfetch-contents.com/28/54/32/91/28543291_57846182_1000.jpg","alt": "Jacquemus Les Doubles sandals","index": 1},{"type": "Image","url": "https://cdn-images.farfetch-contents.com/28/54/32/91/28543291_57846188_1000.jpg","alt": "Jacquemus Les Doubles sandals","index": 2}],"extraInfo": {"label": null,"color": "830|CAMEL","mainColor": "Brown","condition": "NEW"},"price": {"current": 67700,"currentFormatted": "$677","original": 127100,"stockCount": 3,"stockStatus": "InStock"},"recommendedProducts": [{"id": "36558720","url": "https://www.farfetch.com/shopping/women/fendi-iconic-colibri-sandals-item-36558720.aspx","raw": {"id": "36558720","resourceIdentifier": {"path": "/shopping/women/fendi-iconic-colibri-sandals-item-36558720.aspx","__typename": "ResourceIdentifier"},"brand": {"id": "84259709","name": "FENDI","__typename": "Brand"},"shortDescription": "Iconic Colibrì sandals","label": "New Season","merchantId": "16188","promotion": null,"stockQuantity": 12,"rankingAlgorithm": null,"price": {"__typename": "ProductCatalogItemFullPrice","value": {"raw": 1038,"formatted": "$1,038","__typename": "GenericValue"},"currency": {"isoCode": "USD","symbol": "$","__typename": "Currency"},"installments": null},"__typename": "ProductCatalogItem","productPrice": {"full": {"value": {"raw": 1038,"formatted": "$1,038","__typename": "GenericValue"},"__typename": "ProductFullPrice"},"discounts": [],"final": {"value": {"raw": 1038,"formatted": "$1,038","__typename": "GenericValue"},"type": "FULL","__typename": "ProductFinalPrice"},"currency": {"isoCode": "USD","symbol": "$","__typename": "Currency"},"installments": null,"promoOffer": null,"__typename": "ProductCatalogItemPrice"},"variationProperties": [{"__typename": "ProductCatalogItemScaledSizeVariationProperty","order": 1,"totalItems": 6,"values": [{"id": "36","order": 1,"description": "36","__typename": "ProductCatalogItemScaledSizeVariationPropertyValue"},{"id": "36.5","order": 2,"description": "36.5","__typename": "ProductCatalogItemScaledSizeVariationPropertyValue"}]}],"visualizationExperience": {"isForMembers": false,"__typename": "VisualizationExperience"},"tags": [{"id": "2303","__typename": "ProductTag"}],"externalTriggers": null,"deliveryMethods": [],"attributes": [],"returnDetail": null,"images": [{"order": 1,"size480": {"url": "https://cdn-images.farfetch-contents.com/36/55/87/20/36558720_68756004_480.jpg","alt": "FENDI Iconic Colibrì sandals","__typename": "Image"},"__typename": "ProductCatalogItemImage"}],"categories": [{"id": "141258","name": "Women","__typename": "ProductCatalogItemCategory"},{"id": "136301","name": "Shoes","__typename": "ProductCatalogItemCategory"},{"id": "198954","name": "Sandals","__typename": "ProductCatalogItemCategory"}]}}]}
🗂️ Category
From a storefront or department start URL. handle is built from the English category names, so it is
the same in every storefront. productsCount and facets take in the whole category, sale included; the
category's page on the website, like a listing start URL, shows only the full-price products. facets are
the category's listing filters; category, designer and colour values carry their product counts. Arrays
are shortened below.
{"id": "198967","title": "Mules","handle": "men/shoes/mules","description": "","productsCount": 549,"retailer": "farfetch","url": "https://www.farfetch.com/uk/shopping/men/items.aspx?category=198967","country": "GB","language": "en-GB","currency": "GBP","department": "Men","paths": [["Men","Shoes","Mules"]],"parentId": "135968","facets": [{"id": "categories","name": "Categories","type": "Categories","values": [{"id": "135968","name": "Shoes","count": 549},{"id": "198967","name": "Mules","count": 549}]},{"id": "brands","name": "Brands","type": "Brands","values": [{"id": "100335705","name": "DRIES VAN NOTEN","count": 2},{"id": "100965","name": "PS Paul Smith","count": 2}]},{"id": "colors","name": "Colors","type": "Colors","values": [{"id": "1","name": "Black","count": 148},{"id": "10","name": "Yellow","count": 11}]},{"id": "price","name": "Price","type": "Price","values": [{"id": "34-2500","name": "34-2500"}]},{"id": "priceType","name": "PriceType","type": "PriceType","values": [{"id": "0","name": "FullPrice"},{"id": "1","name": "Sale"}]},{"id": "attributes:11006","name": "Heel Height","type": "Attributes","values": [{"id": "19500034","name": "Flat"},{"id": "19500035","name": "Mid Heel"}]}]}
💳 Pricing
This Actor uses pay per event: you pay for the data saved to the dataset, not for compute time or run duration. The event prices are on the Actor's pricing tab.
| Event | Charged |
|---|---|
🛍️ product | Once per product saved, at the same price as before. |
🗂️ category | Once per category record from a storefront or department URL. Until this event takes effect, a category record is charged as a result, at the product price. |
Apify's free plan includes $5 of platform credit every month. You are never charged for failed requests, products that could not be found, or the same record twice in one run. Set Max total charge on the run to cap spend — the Actor stops cleanly at the limit and keeps everything already saved.
🤖 Use with AI agents
This Actor is callable as a tool by any MCP-capable agent — Claude, Cursor, VS Code — or by your own code, with no wrapper and nothing extra to deploy.
Connect over MCP
https://mcp.apify.com?tools=autofacts/farfetch
In a client that reads an mcpServers configuration block:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=autofacts/farfetch","headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }}}}
The agent reads this Actor's parameters and their descriptions straight from the input schema, and the hosted server infers the result field types from the dataset schema — so a model knows what to send and what comes back before it ever calls anything.
Or call the API directly
curl -X POST "https://api.apify.com/v2/acts/autofacts~farfetch/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"startUrls": [{"url": "https://www.farfetch.com/shopping/women/mules-1/items.aspx?page=1&view=90&sort=3&scale=274&attributes:11006=19500036&colour=13"}], "maxConcurrency": 5}'
The response body is the dataset records described above.
🧰 Other Actors by autofacts
Apify only auto-recommends Actors in the same category, so here are the ones that actually pair with this scraper:
| Actor | What it's for |
|---|---|
| Sephora Product Scraper | Beauty across 29 countries |
| Ulta Beauty Scraper | US beauty retail |
| Macy's Scraper | Department-store catalog and pricing |
| Boohoo Scraper | Fast fashion across 7 regions |
| Lululemon Scraper | Activewear catalog and pricing |
All of them: apify.com/autofacts
