
Google Ads Scraper
scrape.ly/store/querystone/google-ads-scraperLead generationSEO tools
4 monthly users

Scrape Just Eat restaurants near any postcode, address or area in the UK, Ireland, Spain, Italy, Switzerland and on Lieferando, Thuisbezorgd, Pyszne, Bistro and Takeaway.com, or from restaurant links: ratings, reviews, cuisines, delivery fee, minimum order, ETA, deals, address, coordinates, plus optional full menus and opening times.
Get every restaurant Just Eat shows for a postcode, address or area: name, star rating, number of ratings, cuisines, delivery fee, minimum order, delivery time, deals, open-now status, address and coordinates. It reads Just Eat's own restaurant list, so a whole area (often 500 to 1,600 restaurants in a big city) comes back in seconds, with no login and no browser. Turn on menus to also get every dish with its price, plus opening times and allergen info.
Works on just-eat.co.uk and the other Just Eat Takeaway sites: Ireland, Spain, Italy, Switzerland, Lieferando (Germany, Austria), Thuisbezorgd (Netherlands), Takeaway.com (Belgium, Luxembourg), Pyszne (Poland) and Bistro (Slovakia).
| Field | What it does |
|---|---|
startUrls | Just Eat area or search pages (/area/wc2-coventgarden, /area/m1-manchester/pizza, ?postcode= links) and restaurant pages (/restaurants-<name>/menu), on any supported site. |
locations | Postcodes (SW1A 1AA, 10178), addresses (Grafton Street, Dublin) or coordinates (51.5072, -0.1276). |
country | Market for locations: uk, ie, es, it, ch, de, at, nl, be, lu, pl, sk. |
maxItems | Restaurants to save per URL or location (default 20). |
serviceType | delivery or collection. |
cuisines, minRating, minReviews, maxDistanceKm | Filters. |
openNowOnly, dealsOnly, freeDeliveryOnly, halalOnly | Yes/no filters. |
sortBy | RECOMMENDED (Just Eat's order), RATING, REVIEWS, DISTANCE, DELIVERY_TIME, MIN_ORDER, DELIVERY_FEE. |
includeMenu | Adds the full menu, opening times, description and allergen info. |
{
"startUrls": ["https://www.just-eat.co.uk/area/wc2-coventgarden"],
"locations": ["M1 4AN"],
"country": "uk",
"maxItems": 50,
"cuisines": ["Pizza"],
"minRating": 4,
"sortBy": "RATING",
"includeMenu": false
}
One row per restaurant.
| Field | Description |
|---|---|
name, brandName, url | Restaurant name, chain name and Just Eat link |
ratingStars, reviewCount | Star rating and number of ratings |
cuisineNames | Cuisines as Just Eat lists them |
isOpenNow, etaText, etaMinMinutes, etaMaxMinutes | Open status and delivery (or collection) time |
deliveryFee, minimumOrder, freeDeliveryFrom, currency | Fees for the searched location, in the local currency |
deliveryFees | All fee bands in minor units (pence, cents), with the cheapest and dearest band |
dealsText, deals | Current offers |
street, city, postcode, latitude, longitude, distanceKm | Address, coordinates and driving distance from the searched location |
logoUrl, bannerImageUrl | Images |
position, searchQuery, searchLocation, searchFilters | Where the row came from |
menu, menuCategories, menuItemCount, minItemPrice, maxItemPrice, averageItemPrice | With menus on: every dish with category, price, sizes, labels and calories |
openingTimes, description, allergenUrl, isHalal | With menus on: weekly hours and restaurant details |
The raw Just Eat fields (address, rating, availability, isOpenNowForDelivery, isOpenNowForCollection, isNew, isPremier, driveDistanceMeters, cuisines, tags and more) are kept too.
Example row from a test run (trimmed):
{
"id": "89996",
"name": "Burger King - Leicester Square",
"url": "https://www.just-eat.co.uk/restaurants-burgerking-leicestersquare/menu",
"ratingStars": 5,
"reviewCount": 830,
"cuisineNames": ["Burgers", "Chicken", "Breakfast"],
"isOpenNow": true,
"etaText": "15-30 min",
"deliveryFee": 1.29,
"minimumOrder": 0,
"currency": "GBP",
"dealsText": [],
"street": "17-21 Leicester Square",
"city": "London",
"postcode": "WC2H 7LE",
"latitude": 51.511026,
"longitude": -0.12953,
"distanceKm": 0.58,
"country": "GB",
"brandName": "Burger King",
"position": 1,
"searchQuery": "https://www.just-eat.co.uk/area/wc2-coventgarden",
"deliveryFees": {
"byMinFee": {"minimumAmount": 0, "fee": 129},
"numBands": 1,
"minimumOrderValue": 0,
"bands": [{"minimumAmount": 0, "fee": 129}]
}
}
With menus on, each row also has items like this:
{
"category": "GoGo's Meal Deals",
"itemName": "GoGo's Twogether Deal",
"itemDescription": "Any 2 Small Pizzas + Any Side + Any 2 dips + a portion of Warm Gooey Cookies",
"price": 30.99,
"variations": [],
"labels": [],
"calories": null
}
You pay $2.50 per 1,000 restaurants ($0.0025 each). Menus are an optional extra of $2.50 per 1,000 restaurants with a menu. There is no start fee.
Example: 1,000 restaurants without menus ≈ $2.50 in restaurant fees plus about a cent of platform usage (compute and datacenter proxy), which is billed separately at the normal rates.
Is it legal to scrape Just Eat? The actor only reads public restaurant information that Just Eat shows to every visitor, without logging in. Check that your use of the data follows the site's terms and the laws that apply to you.
Do I need a Just Eat account or a proxy? No account. Datacenter proxies are on by default and work; if they get blocked, the run switches to residential proxies by itself.
How many restaurants can I get? As many as Just Eat lists for each location, often 500 to 1,600 in a big city. Add more postcodes or areas to cover more ground; restaurants found twice are saved once.
Why is a field empty?
Just Eat does not show every value for every restaurant. Restaurants with no ratings have no ratingStars; collection searches have no delivery fee; fees and ETA depend on the searched location, so restaurant links get them for the restaurant's own neighbourhood.
Can I schedule it or use it through the API? Yes. Schedule runs to track fees, deals and menus over time, and start runs or read results through the API or webhooks.
Coming from a similar actor on another platform?
A searchUrl + maxItems input works as is, and the raw Just Eat fields keep their names and shapes, with easier flat fields added.
menuNote says so.Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
startUrlsarrayOptionalJust Eat URLs
Area or search pages (https://www.just-eat.co.uk/area/wc2-coventgarden, /area/m1-manchester/pizza, a search link with ?postcode=) and restaurant pages (https://www.just-eat.co.uk/restaurants-pizzagogosw8/menu). Sister sites work too: just-eat.ie, just-eat.es, justeat.it, just-eat.ch, lieferando.de, lieferando.at, thuisbezorgd.nl, pyszne.pl, bistro.sk and takeaway.com (Belgium, Luxembourg).
locationsarrayOptionalPostcodes, addresses or coordinates
Each line is one search in the selected country: a postcode (SW1A 1AA, M1 4AN, 10178), a street address or place ("Grafton Street, Dublin"), or coordinates ("51.5072, -0.1276").
countryenumOptionaldefault "uk"Country
Market for postcodes and addresses. Just Eat URLs always use their own site.
maxItemsintegerOptionaldefault 20Max restaurants per location
How many restaurants to save for each URL, postcode or address. Just Eat lists every restaurant that serves a location (often 500 to 1,600 in big cities), so this can go as high as that. Restaurant links are always scraped.
serviceTypeenumOptionaldefault "delivery"Delivery or collection
Delivery lists restaurants that deliver to the location, with fees and minimum order. Collection lists restaurants you can pick up from.
cuisinesarrayOptionalCuisines
Keep only restaurants with one of these cuisines, as Just Eat names them: Pizza, Indian, Chinese, Burgers, Sushi, Thai, Halal, Breakfast, Groceries...
minRatingnumberOptionalMinimum rating
Keep only restaurants rated at least this many stars (0 to 5).
minReviewsintegerOptionalMinimum reviews
Keep only restaurants with at least this many ratings.
maxDistanceKmnumberOptionalMaximum distance (km)
Keep only restaurants within this driving distance of the location.
openNowOnlybooleanOptionaldefault falseOpen now only
Keep only restaurants that take orders right now.
dealsOnlybooleanOptionaldefault falseDeals only
Keep only restaurants with a deal or offer.
freeDeliveryOnlybooleanOptionaldefault falseFree delivery only
Keep only restaurants that deliver for free.
halalOnlybooleanOptionaldefault falseHalal only
Keep only restaurants Just Eat lists as halal.
sortByenumOptionaldefault "RECOMMENDED"Sort by
Order of the restaurants for each location. Recommended keeps Just Eat's own order.
includeMenubooleanOptionaldefault falseInclude menu and opening times
Also save each restaurant's full menu (categories, items, prices, sizes, dietary labels, calories, images), its weekly opening times, description and allergen info. Charged as an extra menu event per restaurant.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy
Datacenter proxies work for Just Eat. The run switches to residential proxies on its own if datacenter addresses get blocked.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| id | string | null | |
| name | string | null | |
| url | string | null | |
| ratingStars | number | null | |
| reviewCount | number | null | |
| cuisineNames | array | null | |
| isOpenNow | boolean | null | |
| etaText | string | null | |
| etaMinMinutes | number | null | |
| etaMaxMinutes | number | null | |
| deliveryFee | number | null | |
| minimumOrder | number | null | |
| freeDeliveryFrom | number | null | |
| currency | string | null | |
| dealsText | array | null | |
| street | string | null | |
| city | string | null | |
| postcode | string | null | |
| latitude | number | null | |
| longitude | number | null | |
| distanceKm | number | null | |
| country | string | null | |
| market | string | null | |
| logoUrl | string | null | |
| menu | array | null | |
| menuItemCount | number | null | |
| openingTimes | array | null | |
| position | number | null |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Menu | Full menu, opening times and restaurant details for one restaurant (only when menus are switched on). | $0.0025 |
| Restaurant | One restaurant saved with rating, reviews, cuisines, delivery fee, minimum order, ETA, deals, address and coordinates. | $0.0025 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('shelfbright/just-eat-scraper').call({
"startUrls": [
"https://www.just-eat.co.uk/area/wc2-coventgarden"
],
"maxItems": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run shelfbright/just-eat-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=shelfbright/just-eat-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
The first 10 restaurants Just Eat lists for M1 4AN.
5 restaurants near WC2E 7PH with every dish, price and opening times.
Pizza places rated 4+ stars with 50+ ratings near SW1A 1AA, best first.
10 restaurants for postcode 10178 on Lieferando.
10 restaurants from a Thuisbezorgd area URL.
10 restaurants you can pick up from near Grafton Street.

Scrape Google Maps places for any search term and city, with no code or with one API call. A real run, its output, its log and its exact cost, plus the limits and the legal side.
Read the article
Paste an Amazon search or product URL into a ready-made Actor and get one row per product with price, ASIN, rating and review count. This guide covers the no-code steps, the API, ZIP code pricing, a real run and its cost.
Read the article
Scrape Google search results by query and country and get each results page as JSON: organic results with positions, People Also Ask and related searches. Run it without code or from Python, with a real run, the cost per page and Google's terms.
Read the articleScrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.