A New Alternative to Extract Fragrance Data as JSON Without Fighting the Cloudflare Wall
An in-depth look at how to extract structured fragrance notes and ratings from data sources that do not block requests, making it easier for developers to build scent recommendation apps and fragrance finder tools.

Stock photo for illustration only, not from the actual event
Anyone developing a fragrance-related project—whether it's a fragrance dupe finder, a product data enrichment system, or a rating tracking tool—needs the exact same set of raw data: the structure of fragrance notes, accords, and review scores per bottle, rather than long-form review texts. The demand for this type of data is extremely high; statistics from the Apify platform reveal that the Fragrantica scraper has been run a total of over 1,700 times. However, accessing this data is becoming increasingly difficult, and developers need to understand this problem before choosing a data source.
In the past, Fragrantica was the largest fragrance database, making it the primary target for data extraction. Today, however, the website is protected by Cloudflare, forcing most bots or scripts to battle this defense system. We can see that many scrapers on Apify are beginning to show outdated results or suffer from low success rates because the site blocks standard requests. This leaves developers bearing the costs of proxies, systems that must be rerun, and broken data pipelines, even though the actual data needed consists solely of notes, accords, and ratings.
On the other hand, Parfumo is another large community-driven fragrance encyclopedia with data depth and scale comparable to Fragrantica—including notes, accords, community rating scores in various dimensions, and perfumer credits. The key advantage, however, is that Parfumo still serves standard HTML pages without aggressive caching and free of Cloudflare challenges. Strangely enough, there are no dedicated scrapers for it on Apify yet, which is fascinating given how high the demand for this dataset is, while most tools continue to target the data source that is actively blocking developers.
A proper data storage system must store information in a pyramid structure rather than a flat list of notes. For example, looking at the actual data for Dior Sauvage EDT, the storage structure consists of:
- top: Bergamot, Apple, Blackcurrant, Lemon, Pink pepper
- heart: Pineapple, Indonesian patchouli, Jasmine
- base: Birch, Cedarwood, Musk, Oakmoss, Ambergris
This pyramid structure is crucial for a fragrance dupe finder system because two bottles of perfume might share the exact same base notes yet smell completely different due to differing top notes. Comparing the pyramid structure is therefore much more accurate than comparing flat note sets. Tools like the Parfumo Fragrance Scraper on Apify are thus designed to accept a list of URLs or brand pairs and immediately return a clean record per perfume.
Our recommendation for developers is that if you already have a working Fragrantica data pipeline, there is no need to switch midway. However, if you are starting a new project from scratch, the 1,700 runs on Fragrantica serve as a testament that this dataset is valuable and worth exploring. It's just that Fragrantica is not the only place to access this information, as Parfumo offers the same class of data from a source that doesn't try to block you from reading it.
Source: Dev.to
Found something wrong in this article? Report an issue with this article
Comments
Leave a Comment