# Celebrity Mention Scraper (`c0nst/celebrity-mention-scraper`) Actor

Find out how often celebrities and public figures are talked about across any website. Celebrity Mention Scraper crawls the pages you specify, counts every mention of each name, and tells you exactly which pages they appear on — sorted by frequency.

- **URL**: https://apify.com/c0nst/celebrity-mention-scraper.md
- **Developed by:** [Kostiantyn](https://apify.com/c0nst) (community)
- **Categories:** Automation, News, Social media
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.10 / site scrape

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Celebrity Mention Scraper

Find out how often celebrities and public figures are talked about across any website. Celebrity Mention Scraper crawls the pages you specify, counts every mention of each name, and tells you exactly which pages they appear on — sorted by frequency.

> **Before you start:** This scraper uses plain HTTP requests — it cannot execute JavaScript or log into websites. Content loaded dynamically (infinite scroll, JS-rendered articles) and pages behind a login, paywall, or cookie consent wall will not be accessible. It works best on public, server-rendered sites such as news outlets, blogs, forums, and wikis.

### What does it do?

Give it a list of websites and a list of names. It crawls each site up to a configurable depth, scans every page for whole-word name matches, and returns a ranked breakdown: who is mentioned most, on which pages, and how many times.

**Typical use cases:**
- Track how much coverage a celebrity gets on entertainment or news sites
- Monitor public figures across fan forums, blogs, or review sites
- Measure influencer presence on a media property before a sponsorship deal
- Research how often athletes or musicians appear in sports or music publications
- Compare celebrity coverage across competing publications

### How to use

1. Open the Actor and click **Try for free**
2. Enter the websites you want to scan under **Start URLs**
3. Add the celebrity or person names you want to track
4. Click **Start** — results appear as pages are crawled
5. Download from the **Output** tab in JSON, CSV, or Excel

### Input

| Field | Type | Description |
|---|---|---|
| `startUrls` | array | Websites to crawl (required) |
| `names` | array | Celebrity / person names to search for (required) |

Use full names for best accuracy — `"Taylor Swift"` matches more precisely than `"Taylor"`, which would also pick up unrelated content.

Example:

```json
{
    "startUrls": [
        { "url": "https://rollingstone.com" },
        { "url": "https://billboard.com" }
    ],
    "names": ["Taylor Swift", "Beyoncé", "Billie Eilish", "Sabrina Carpenter"]
}
````

### Output

One row per celebrity per site, sorted by total mentions descending.

```json
[
    {
        "name": "Taylor Swift",
        "startUrl": "https://rollingstone.com",
        "totalMentions": 47,
        "pageCount": 12,
        "pages": [
            { "url": "https://rollingstone.com/music/eras-tour-review/", "mentions": 9 },
            { "url": "https://rollingstone.com/music/album-of-year/",    "mentions": 6 }
        ],
        "scrapedAt": "2026-04-15T10:00:00.000Z"
    }
]
```

| Field | Description |
|---|---|
| `name` | The celebrity name as entered |
| `startUrl` | The site that was crawled |
| `totalMentions` | Total name occurrences across all pages on that site |
| `pageCount` | Number of distinct pages the name appeared on |
| `pages` | Per-page breakdown, sorted by mention count |
| `scrapedAt` | Timestamp of the crawl |

### How matching works

- **Case-insensitive** — "beyoncé", "Beyoncé", and "BEYONCÉ" all count
- **Whole-word** — "Swift" won't match inside "swiftly"
- **Full name recommended** — multi-word names like "LeBron James" are matched as a phrase

### Pricing

**$0.10 per site** that returned at least one result. Sites crawled with zero mentions are not charged.

### Advanced settings

| Field | Default | Description |
|---|---|---|
| `maxDepth` | `2` | Link-levels deep to follow. `0` = start URL only, `1` = directly linked pages, `2` = one level deeper. Max: `3` |
| `maxRequestsPerSite` | `200` | Page cap per site. Max: `300` |

### Notes

This Actor uses plain HTTP requests — no browser, no JavaScript execution. It works well on server-rendered sites (news sites, blogs, forums, Wikipedia) but won't capture content loaded dynamically by JavaScript. Social media platforms are not accessible via plain HTTP.

# Actor input Schema

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

List of websites to crawl for celebrity mentions.

## `names` (type: `array`):

List of celebrity or public figure names to search for. Matching is case-insensitive and whole-word. Use full names for best accuracy (e.g. "Taylor Swift" rather than just "Taylor").

## `maxDepth` (type: `integer`):

How many link-levels deep to follow. 0 = start URL only, 1 = all directly linked pages, 2 = deeper into sub-sections.

## `maxRequestsPerSite` (type: `integer`):

Maximum number of pages to crawl per site for up to 300.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://example.com"
    }
  ],
  "names": [
    "Taylor Swift",
    "Elon Musk",
    "LeBron James"
  ],
  "maxDepth": 2,
  "maxRequestsPerSite": 200
}
```

# Actor output Schema

## `results` (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://example.com"
        }
    ],
    "names": [
        "Taylor Swift",
        "Elon Musk",
        "LeBron James"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("c0nst/celebrity-mention-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://example.com" }],
    "names": [
        "Taylor Swift",
        "Elon Musk",
        "LeBron James",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("c0nst/celebrity-mention-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).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://example.com"
    }
  ],
  "names": [
    "Taylor Swift",
    "Elon Musk",
    "LeBron James"
  ]
}' |
apify call c0nst/celebrity-mention-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=c0nst/celebrity-mention-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Celebrity Mention Scraper",
        "description": "Find out how often celebrities and public figures are talked about across any website. Celebrity Mention Scraper crawls the pages you specify, counts every mention of each name, and tells you exactly which pages they appear on — sorted by frequency.",
        "version": "0.0",
        "x-build-id": "ff3NiLgwjMQ6KtX25"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/c0nst~celebrity-mention-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-c0nst-celebrity-mention-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/c0nst~celebrity-mention-scraper/runs": {
            "post": {
                "operationId": "runs-sync-c0nst-celebrity-mention-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/c0nst~celebrity-mention-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-c0nst-celebrity-mention-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "startUrls",
                    "names"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "List of websites to crawl for celebrity mentions.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "names": {
                        "title": "Celebrity / Person Names",
                        "type": "array",
                        "description": "List of celebrity or public figure names to search for. Matching is case-insensitive and whole-word. Use full names for best accuracy (e.g. \"Taylor Swift\" rather than just \"Taylor\").",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxDepth": {
                        "title": "Max Crawl Depth",
                        "minimum": 0,
                        "maximum": 3,
                        "type": "integer",
                        "description": "How many link-levels deep to follow. 0 = start URL only, 1 = all directly linked pages, 2 = deeper into sub-sections.",
                        "default": 2
                    },
                    "maxRequestsPerSite": {
                        "title": "Max Requests Per Site",
                        "minimum": 0,
                        "maximum": 300,
                        "type": "integer",
                        "description": "Maximum number of pages to crawl per site for up to 300.",
                        "default": 200
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
