Recipe Scraper - Recipe URL to Structured JSON, $3/1K
Pricing
from $3.00 / 1,000 recipe extracteds
Recipe Scraper - Recipe URL to Structured JSON, $3/1K
Paste recipe page URLs, get clean JSON: ingredients (qty, unit, item), steps, prep/cook/total minutes, servings, nutrition, image, rating. Reads schema.org Recipe data, honours robots.txt.
Pricing
from $3.00 / 1,000 recipe extracteds
Rating
0.0
(0)
Developer
Penny Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
Recipe URL Extractor: recipe page URL to structured JSON
Paste the URLs of recipe pages and get one clean, flat record per recipe: title, image, author, prep/cook/total minutes, servings, ingredients (raw text plus parsed quantity, unit and item), steps, nutrition, rating, cuisine, category and keywords. The data is read from the schema.org Recipe JSON-LD that recipe sites publish for search engines. Plain HTTP, no browser, no login, no proxies.
What you can do
- Build a recipe database, meal-planner or grocery-list feature from URLs you already have.
- Normalise recipes from many different sites into one schema.
- Schedule it or call it from the Apify API, Make, Zapier or n8n.
- Cap spend with
maxRecipes.
Example input
{"startUrls": ["https://cookieandkate.com/best-lentil-soup-recipe/","https://www.loveandlemons.com/pesto-recipe/","https://www.bbcgoodfood.com/recipes/classic-lasagne-0"],"maxRecipes": 50,"includeNutrition": true}
Both plain strings and { "url": "..." } objects are accepted in startUrls.
Example output
{"url": "https://www.bbcgoodfood.com/recipes/classic-lasagne-0","title": "Classic lasagne","image": "https://...jpg","prepTimeMin": 60, "cookTimeMin": 60, "totalTimeMin": 120,"servings": 6, "yieldText": "6","ingredients": [{ "raw": "750g lean beef mince", "qty": 750, "unit": "g", "item": "lean beef mince" }],"steps": ["Heat the oil in a large pan ..."],"nutrition": { "calories": "..." },"rating": 4.6, "ratingCount": 1200,"cuisine": [], "category": [], "keywords": [],"error": null, "retrievedAt": "2026-10-22T12:00:00.000Z"}
Ingredient parsing (qty, unit, item) is best effort; raw always holds the original text. Fields a page does not publish are null or empty.
Input
| Field | Meaning |
|---|---|
startUrls | Recipe page URLs. One record per Recipe found on a page. |
maxRecipes | Stop after this many recipes (default 50). |
includeNutrition | Add the nutrition object when the page has it (default true). |
Errors and limits
A URL that fails, is disallowed by robots.txt, or has no schema.org Recipe data produces one row with an error message and is not charged. Some sites block automated requests (HTTP 403); the actor does not try to get around that. It reads one page per URL and does not crawl category pages or sitemaps.
Pricing
Pay per event: $0.003 per recipe extracted ($3 per 1,000) plus $0.00005 per run start. Error rows are free.
Terms
You are responsible for the terms of the sites you submit and for how you use the data. The actor only fetches URLs you supply, honours each site's robots.txt, and returns structured facts (ingredients, times, steps) rather than republishing articles. Recipe text and images remain the property of their publishers. This actor is not affiliated with any recipe site.
Built with AI assistance (Claude).