# 🇬🇧 Yellow Pages UK Scraper - Emails & Leads (`confidential_gnat/yellowpages-uk-scraper`) Actor

Scrape UK businesses from Yell, the UK Yellow Pages (yell.com), with emails: name, phone, service area, website, rating, hours and employee emails found on each business website. Search by keyword and place or paste a URL. Export JSON, CSV or Excel.

- **URL**: https://apify.com/confidential_gnat/yellowpages-uk-scraper.md
- **Developed by:** [ActorFlow](https://apify.com/confidential_gnat) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.50 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 🇬🇧 Yellow Pages UK Scraper - Emails & Leads

![Yellow Pages UK Scraper - Emails & Leads cover](https://i.postimg.cc/5NJ19GWB/Gemini-Generated-Image-d8qfrhd8qfrhd8qf.jpg)

**Scrape businesses from Yell (Yellow Pages UK) (yell.com)**: name, phone numbers, service area, categories, website, rating, review count, opening hours, services and social links. Export to JSON, CSV or Excel, or call it as an **API**. Paste a **Yell UK search URL**, or give search terms and locations, and press Start. **Emails too:** business emails where the page lists one, plus employee emails found on each business website.

**Target website:** [Yell (Yellow Pages UK) (yell.com)](https://www.yell.com)

### ✨ Features of this Yell UK business scraper

- **Email extraction** — business emails where the page lists one, plus employee emails found on each business website.
- **Business listing extraction** — name, phone numbers, service area, categories, website, rating, review count and a short tagline from any Yell search page.
- **Pagination support** — walks the result pages of each search until it has the number of businesses you asked for.
- **Search terms and locations** — give any number of terms and locations; every term is searched in every location.
- **Business page details** — optional: opens each business page for the full description, services, opening hours and social links.
- **Employee contacts (leads)** — optional: finds employee names, roles, emails and LinkedIn links from each business's website.
- **Cache, new and changed businesses only** — use one cache name across scheduled runs and skip businesses you already have.
- **No proxy needed** — pages are loaded by the Actor's built-in service, so you leave proxies off.

### 🚀 How to scrape Yell UK businesses in 5 steps

1. [Sign up](https://apify.com/sign-up) for a free Apify account — includes **$5 monthly credit**.
2. Open the actor page and click **Try for free**.
3. Paste Yell UK search URLs, or fill in **Search terms** and **Locations**.
4. Click **Start** and wait for the run to complete.
5. Download results from the **Output** tab in JSON, CSV, or Excel format.

You can also run this actor via the [Apify API](https://docs.apify.com/api/v2) or integrate it directly into your workflows using [Zapier](https://zapier.com/apps/apify), [Make](https://www.make.com/), or [n8n](https://n8n.io/).

### 💰 Pricing for the Yell UK scraper

This actor uses **pay-per-result** billing based on the compute units a run consumes.

- New Apify accounts include **$5 of free monthly credit**.
- It reads the data straight from the directory's pages instead of driving a browser, so it costs significantly less to run than browser-based scrapers.
- **Business pages** (the *Scrape business pages* option) are charged separately, per business whose page is opened, on top of the result price. Runs with business pages off pay only the standard result price.
- **Employee contacts** are charged separately, and only when the lookup successfully returns a list of contacts: every business you are charged for comes with at least one contact. The charge is once per business, not per contact. Businesses with no website, or where no contacts are found, are not charged for it.
- Businesses skipped by the cache are not charged.

### 🖼️ Yell UK scraper input screenshot

![Yellow Pages UK Scraper - Emails & Leads input form in Apify Console: search or business URLs, max items per search, cache project name, find employee contacts, scrape business pages, search terms, locations and proxy configuration](https://i.postimg.cc/sDTPfkGK/image.png)

Numbered labels in the screenshot:

1. **Search or business URLs** — the search result pages or business pages to scrape.
2. **Max items per search** — how many businesses to save for each search.
3. **Cache project name** — reuse the same name on scheduled runs to get only new and changed businesses.
4. **Find employee contacts (leads)** — look up each business website for employee contacts (charged separately, only when contacts are found).
5. **Scrape business pages** — open every business page for extra details (charged separately per business page).

Search terms and Locations (in the collapsible optional section) and the proxy settings sit below these fields.

### 🔧 Yell UK scraper input configuration

| Field | Type | Required | Default | Description |
| ----- | ---- | -------- | ------- | ----------- |
| Search or business URLs (`startUrls`) | array | — | example search (prefill) | Yell search result pages or single business pages, for example https://www.yell.com/s/plumbers-london.html or https://www.yell.com/biz/leak-tracers-direct-london-9051572/. Leave empty to use the search terms and locations below. |
| Max items per search (`maxItems`) | integer | — | 5 | Maximum businesses saved for each search. Searches show up to about 100 result pages; for more, use narrower searches (more search terms or locations). |
| Cache project name (`cacheProjectName`) | string | — | — | Same name on each run = only new and changed businesses. |
| Find employee contacts (`enrichLeads`) | boolean | — | false | Looks up each business's website for employee contacts and adds them as a `leads` array. Needs the business to have a website. Charged only when the lookup successfully returns a list of contacts (at least one per charged business): once per business, not per contact; nothing when none are found. |
| Scrape business pages (`scrapeDetails`) | boolean | — | false | Open every business page for the full description, services, opening hours and social links. Slower; off by default. Adds a separate charge per business page opened, on top of the normal result price. |
| Search terms (`searchTerms`) | array | — | — | What to search for, for example plumbers, dentists or restaurants. Each term is searched in every location. |
| Locations (`locations`) | array | — | — | Where to search, for example London, Manchester or Leeds. Each location is searched for every search term. |
| Proxy configuration (`proxyConfiguration`) | object | — | no proxy | Not needed: pages are loaded by the Actor's built-in service. |

**Supported URL types:**

- Search: `https://www.yell.com/s/plumbers-london.html`
- Search with parameters: `https://www.yell.com/ucs/UcsSearchAction.do?find=Y&keywords=plumbers&location=london`
- Business page: `https://www.yell.com/biz/leak-tracers-direct-london-9051572/`

### 📦 Yell UK scraper output data

The output is a dataset of business records with the fields `businessId`, `name`, `url`, `phone`, `phones`, `address`, `serviceArea`, `categories`, `website`, `rating`, `ratingCount`, `yearsWithDirectory`, `snippet`, `imageUrl`, `isSponsored`, `description`, `services`, `hours`, `email`, `socialLinks`, `leads`, `changeType`, `searchUrl`, `scrapedAt`. The dataset has 2 views:

- **Overview** — name, phone, service area, categories, website, rating and number of reviews.
- **Contacts** — name, phone, email, website and city of each business.

**Output at a glance:**

| Business | Phone | Service area | Categories | Website | Rating | Reviews |
| --- | --- | --- | --- | --- | --- | --- |
| [The LOCAL Plumbers - NO CALL OUT CHARGE](https://www.yell.com/biz/the-local-plumbers-no-call-out-charge-ashford-901769256/) | 0800 955 4003 | London | Plumbers | https://www.thelocalplumbers.co.uk/yell | — | — |
| [Fast & LOCAL Plumbers - NO CALL OUT CHAR](https://www.yell.com/biz/fast-and-local-plumbers-no-call-out-charge-ashford-901776261/) | 0800 135 7294 | London | Plumbers | https://fastandlocalplumbers.com/yell | — | — |

**Sample output (raw JSON):**

```json
[
  {
    "businessId": "901769256",
    "name": "The LOCAL Plumbers - NO CALL OUT CHARGE",
    "url": "https://www.yell.com/biz/the-local-plumbers-no-call-out-charge-ashford-901769256/",
    "phone": "0800 955 4003",
    "phones": [
      "0800 955 4003",
      "07537 149686"
    ],
    "address": null,
    "serviceArea": "London",
    "categories": [
      "Plumbers"
    ],
    "website": "https://www.thelocalplumbers.co.uk/yell",
    "rating": null,
    "ratingCount": null,
    "yearsWithDirectory": "30+",
    "snippet": "EMERGENCY & NON-EMERGENCY JOBS. ⭐️⭐️⭐️⭐️⭐️",
    "imageUrl": "https://c.yell.com/t_bigRect,f_auto/43358654-e911-4a18-a8ea-f876943a5ecd_image_png.png",
    "isSponsored": true,
    "searchUrl": "https://www.yell.com/ucs/UcsSearchAction.do?find=Y&keywords=plumbers&location=London",
    "description": "Hello, We are The LOCAL Plumbers - NO CALL OUT CHARGE. Our LOCAL Trusted Plumbing Service offers a Same day service 7 days a week. We specialise in all aspects of Emergency & NON Emergency Plumbing Jobs, Services, Problems & Repairs. The Type of Plumbing Jobs that we do are Jobs like Tanks, Taps, Toilet Flushes, Leaks, Cylinders, Immersions Heaters, Stopcocks, Overflows, Showers, Blocked Sinks & Pipes just to name a few. We are on call and awaiting your call. We take all kinds of credit or debit card payments.",
    "services": [
      "Taps",
      "Leaks"
    ],
    "leads": [],
    "changeType": null,
    "scrapedAt": "2026-10-22T11:05:32.589Z"
  },
  {
    "businessId": "901776261",
    "name": "Fast & LOCAL Plumbers - NO CALL OUT CHARGE",
    "url": "https://www.yell.com/biz/fast-and-local-plumbers-no-call-out-charge-ashford-901776261/",
    "phone": "0800 135 7294",
    "phones": [
      "0800 135 7294",
      "07537 149288"
    ],
    "address": null,
    "serviceArea": "London",
    "categories": [
      "Plumbers"
    ],
    "website": "https://fastandlocalplumbers.com/yell",
    "rating": null,
    "ratingCount": null,
    "yearsWithDirectory": "30+",
    "snippet": "FAST & LOCAL SERVICE - NO CALL OUT CHARGE ⭐⭐⭐⭐⭐",
    "imageUrl": "https://c.yell.com/t_bigRect,f_auto/f67db380-47b3-4357-8b98-33e5ddfad329_image_png.png",
    "isSponsored": true,
    "searchUrl": "https://www.yell.com/ucs/UcsSearchAction.do?find=Y&keywords=plumbers&location=London",
    "description": "Hello, we are the Fast & LOCAL Plumbers - NO CALL OUT CHARGE. Our LOCAL Trusted Plumbing Service offers a Same day service 7 days a week. We specialise in all aspects of Emergency & NON Emergency Plumbing Jobs, Services, Problems & Repairs. The Type of Plumbing Jobs that we do are Jobs like Tanks, Taps, Toilet Flushes, Leaks, Cylinders, Immersions Heaters, Stopcocks, Overflows, Showers, Blocked Sinks & Pipes just to name a few. We are on call and awaiting your call. We take all kinds of credit or debit card payments.",
    "services": [
      "Taps",
      "Leaks"
    ],
    "leads": [],
    "changeType": null,
    "scrapedAt": "2026-10-22T11:05:32.849Z"
  }
]
```

### 📧 How to find Yell UK business emails and employee contacts (email enrichment)

Switch on **Find employee contacts** and the actor looks up each business's website and adds a `leads` array with employee names, roles, departments, emails, phone numbers and LinkedIn links when they can be found. The `leads` field is always present on every record: it is an empty array when the business has no website or nothing was found. The contacts charge is applied only when the lookup successfully returns a list of contacts, so every charged business has at least one lead. It is charged once per business, not per contact, and never when `leads` is empty. The lookup runs once per business website.

| name | email | position |
| ---- | ----- | -------- |
| Jane Example | jane@example.com | Owner |
| John Sample | john@example.com | Office manager |

### 🔁 Scrape only new Yell UK businesses with the cache

Set the same **Cache project name** on every scheduled run. Businesses already saved under that name and unchanged are skipped: they are not charged and do not count towards **Max items per search**. New businesses get `changeType: "new"` and businesses whose phone, address, website or rating changed get `changeType: "updated"`. Each name keeps its own separate cache. Add the actor to an Apify Schedule to track new businesses in a category and area automatically.

### 🐍 How to scrape Yell UK with Python, JavaScript or the API

Run the actor programmatically with the official Apify clients. Replace `<YOUR_API_TOKEN>` with the token from your [Apify Console](https://console.apify.com/account/integrations).

**Python** (`pip install apify-client`):

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_API_TOKEN>")

run = client.actor("confidential_gnat/yellowpages-uk-scraper").call(run_input={
        "searchTerms": [
            "plumbers"
        ],
        "locations": [
            "London"
        ],
        "maxItems": 20,
        "scrapeDetails": False,
        "enrichLeads": True
    })

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

**JavaScript** (`npm install apify-client`):

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });

const run = await client.actor('confidential_gnat/yellowpages-uk-scraper').call({
        "searchTerms": [
            "plumbers"
        ],
        "locations": [
            "London"
        ],
        "maxItems": 20,
        "scrapeDetails": false,
        "enrichLeads": true
    });

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

**cURL** — start a run and wait for the dataset:

```bash
curl -X POST "https://api.apify.com/v2/acts/confidential_gnat~yellowpages-uk-scraper/run-sync-get-dataset-items?token=<YOUR_API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["plumbers"], "locations": ["London"], "maxItems": 20, "scrapeDetails": false, "enrichLeads": true}'
```

### 💡 What you can use Yell UK business data for

- Lead generation: phone numbers, websites and emails of local businesses by category and area
- Sales prospecting with employee names, roles and emails from each company website
- Local market research and competitor mapping by category, city and rating
- Building and enriching CRM and mailing lists
- Monitoring new businesses and changes in a category with scheduled cached runs

Sales teams, marketing agencies, recruiters and market researchers typically use this data across services, trades, retail and hospitality.

### ⚠️ Limitations of the Yell UK scraper

- **Result depth** — one search shows a limited number of result pages; for more businesses use more search terms and locations.
- **Service area instead of address** — many Yell businesses list the area they serve, not a street address, so `address` can be empty while `serviceArea` is filled.
- **Sponsored listings** — paid listings come first and are marked with `isSponsored`.
- **Ratings** — ratings and counts are only present for businesses that have reviews.
- **Login-required content** — nothing behind a login is collected.

### ❓ Yell UK scraper FAQ

#### Can I scrape Yell (Yellow Pages UK) legally?

The actor only collects data that is already publicly visible on Yell (Yellow Pages UK) — no login, paywall or private content is accessed. Scraping publicly available data is generally considered lawful (see *hiQ Labs v. LinkedIn*), but you are responsible for complying with the site's Terms of Service and applicable laws such as GDPR or CCPA, since business listings can contain personal data such as names, phone numbers and emails.

#### What data does the Yell UK scraper return?

Each record has the business name, phone, address, categories, website, rating and more. With business pages on you also get the full description, services, opening hours and social links. With employee contacts on, each record also has a `leads` array with employee names, roles and emails: business emails where the page lists one, plus employee emails found on each business website.

#### How many businesses can I scrape from one Yell UK search?

`maxItems` limits the businesses saved for each search URL, not the whole run. A search shows a limited number of result pages; to collect more, use several search terms and locations.

#### Do I need a proxy to scrape yell.com?

No. Pages are loaded by the Actor's built-in service, so you leave the proxy off.

#### How do I find emails of businesses on Yell (Yellow Pages UK)?

Switch on **Find employee contacts**: the actor looks up each business's website and adds employee names, roles and emails to a `leads` array. It is charged separately and only when the lookup successfully returns contacts: once per business, with at least one lead in every charged record, and nothing when `leads` is empty.

#### How do I scrape Yell UK with Python?

Use the Python example above: call the actor with the Apify client and iterate over the dataset items.

#### Can I run this Yell UK scraper on a schedule?

Yes. Use Apify Schedules to run it daily or weekly. Set a **Cache project name** and each run returns only new and changed businesses; businesses already seen and unchanged are skipped and not charged.

#### What output formats are supported?

JSON, CSV, Excel, XML and RSS, either from the **Output** tab or through the Apify API.

### 🔗 Other Yellow Pages scrapers by country

| Scraper | Description |
| ------- | ----------- |
| ![US flag](https://flagcdn.com/w20/us.png) [🇺🇸 Yellow Pages USA Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-usa-scraper) | US businesses from yellowpages.com: phones, websites, emails and contacts. |
| ![CA flag](https://flagcdn.com/w20/ca.png) [🇨🇦 Yellow Pages Canada Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-canada-scraper) | Canadian businesses from yellowpages.ca: phones, websites, hours and contacts. |
| ![FR flag](https://flagcdn.com/w20/fr.png) [🇫🇷 Yellow Pages France Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-france-scraper) | French businesses from PagesJaunes: phones, websites, SIRET and contacts. |
| ![DE flag](https://flagcdn.com/w20/de.png) [🇩🇪 Yellow Pages Germany Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-germany-scraper) | German businesses from Gelbe Seiten: phones, websites, ratings and contacts. |
| ![IT flag](https://flagcdn.com/w20/it.png) [🇮🇹 Yellow Pages Italy Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-italy-scraper) | Italian businesses from Pagine Gialle: phones, websites, VAT and contacts. |
| ![AU flag](https://flagcdn.com/w20/au.png) [🇦🇺 Yellow Pages Australia Scraper - Emails & Leads](https://apify.com/confidential_gnat/yellowpages-australia-scraper) | Australian businesses from yellowpages.com.au: phones, emails, ABN and contacts. |
| ![ES flag](https://flagcdn.com/w20/es.png) [🇪🇸 Páginas Amarillas Spain (Yellow Pages) Business Scraper](https://apify.com/confidential_gnat/paginasamarillas-business-scraper) | Spanish businesses from Páginas Amarillas: name, phone, address and more. |

### 🔗 Relevant actors for business directories and leads

| Scraper | Description |
| ------- | ----------- |
| [🏢 BBB Emails & Info Scraper](https://apify.com/confidential_gnat/bbb-business-scraper) | Scrapes Better Business Bureau businesses: name, phone, rating, accreditation and contacts. |
| [⚖️ Martindale Lawyers Scraper](https://apify.com/confidential_gnat/martindale-lawyers-scraper) | Scrapes lawyer and law firm profiles from Martindale with optional contacts. |
| [📧 Decision Maker Email Finder](https://apify.com/confidential_gnat/decision-maker-email-finder) | Finds decision makers and emails from company websites. |
| [💰 Signal NFX Investors Email Scraper](https://apify.com/confidential_gnat/signal-nfx-investors-scraper) | Scrapes VC and angel investor profiles from Signal by NFX. |
| [🇩🇪 German Imprint (Impressum) Scraper](https://apify.com/confidential_gnat/german-imprint-scraper) | Finds a German website's Impressum page and extracts decision makers and contacts. |

### 🔗 Other actors you may find useful

| Scraper | Description |
| ------- | ----------- |
| [💼 XING Jobs Scraper](https://apify.com/confidential_gnat/xing-jobs-scraper) | Scrape job listings from XING Jobs: title, company, location and employment type. |
| [🍷 Vivino Wine Scraper](https://apify.com/confidential_gnat/vivino-wine-scraper) | Scrape wine data from Vivino: name, winery, vintage, region and rating. |
| [📈 Kalshi Markets Scraper](https://apify.com/confidential_gnat/kalshi-markets-scraper) | Scrape Kalshi prediction markets: yes/no prices, implied probability and volume. |
| [✈️ Kiwi.com Flight Scraper](https://apify.com/confidential_gnat/kiwi-flight-scraper) | Scrape flight prices and schedules from Kiwi.com, including airline and times. |
| [🛒 Craigslist Listings Scraper](https://apify.com/confidential_gnat/craigslist-listings-scraper) | Scrape Craigslist listings in any city and category: title, price and more. |

### 💬 Support & contact

If you encounter any issues or have questions, please [open an issue](https://apify.com/confidential_gnat/yellowpages-uk-scraper/issues/open) or reach out via the [Apify Community Forum](https://community.apify.com/).

You can also find more of our actors on the [Actor Flow](https://apify.com/confidential_gnat) page.

# Actor input Schema

## `startUrls` (type: `array`):

Yell search result pages or single business pages, for example https://www.yell.com/s/plumbers-london.html or https://www.yell.com/biz/leak-tracers-direct-london-9051572/. Leave empty to use the search terms and locations below.

## `maxItems` (type: `integer`):

Maximum businesses saved for each search. Searches show up to about 100 result pages; for more, use narrower searches (more search terms or locations).

## `cacheProjectName` (type: `string`):

Use the same name on each scheduled run to get only new and changed businesses. Businesses already seen and unchanged are skipped and not charged. Each record gets a changeType: new or updated.

## `enrichLeads` (type: `boolean`):

Looks up each business's website for employee contacts (name, role, email, LinkedIn) and adds them as a 'leads' array. Needs the business to have a website. Adds a separate charge only for a business where the lookup successfully returns at least one contact (one charge per business, not per contact); nothing is charged when no contacts are found.

## `scrapeDetails` (type: `boolean`):

Open every business page for the full description, services, opening hours and social links. Slower; off by default. Adds a separate charge per business page opened, on top of the normal result price.

## `searchTerms` (type: `array`):

What to search for, for example plumbers, dentists or restaurants. Each term is searched in every location.

## `locations` (type: `array`):

Where to search, for example London, Manchester or Leeds. Each location is searched for every search term.

## `proxyConfiguration` (type: `object`):

Not needed: pages are loaded by the Actor's built-in service. Leave proxies off.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.yell.com/s/plumbers-london.html"
    }
  ],
  "maxItems": 5,
  "enrichLeads": false,
  "scrapeDetails": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `businesses` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.yell.com/s/plumbers-london.html"
        }
    ],
    "maxItems": 5,
    "enrichLeads": false,
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("confidential_gnat/yellowpages-uk-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.yell.com/s/plumbers-london.html" }],
    "maxItems": 5,
    "enrichLeads": False,
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("confidential_gnat/yellowpages-uk-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.yell.com/s/plumbers-london.html"
    }
  ],
  "maxItems": 5,
  "enrichLeads": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call confidential_gnat/yellowpages-uk-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,confidential_gnat/yellowpages-uk-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/wmoMnaCu89eCTxYY0/builds/gGaeNtkg5C5Z0APDE/openapi.json
