# Perplexity Search Scraper (`apify/perplexity-search-scraper`) Actor

Scrape Perplexity AI answers at scale without an API. Extract AI-generated responses, cited sources, URLs, and related questions for any query. Track brand visibility in AI search, monitor citations, and run GEO research. Export to JSON, CSV, or Excel.

- **URL**: https://apify.com/apify/perplexity-search-scraper.md
- **Developed by:** [Apify](https://apify.com/apify) (Apify)
- **Categories:** SEO tools, AI, Automation
- **Stats:** 40 total users, 26 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $9.00 / 1,000 perplexity ai searches

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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## What does Perplexity Search Scraper do?

**Perplexity Search Scraper** extracts **Perplexity AI search results** at scale. Enter your search queries and get back clean, structured data - including Perplexity's **AI-generated answer text**, cited sources with URLs and snippets, citation links, and optional related questions and images - ready for analysis, monitoring, or integration into your workflows.

Perplexity is an AI answer engine that generates detailed, conversational answers grounded in live web sources. This Actor wraps a battle-tested [Google Search Scraper](https://apify.com/apify/google-search-scraper) so you don't need to worry about API keys, proxies, or parsing - just provide your queries and collect the output.

### What can Perplexity Search Scraper do?

- **Extract Perplexity answers** - Get the full AI-generated text that Perplexity produces for each query
- **Collect cited sources** - Capture every source title, URL, snippet, and publish date that Perplexity references
- **Get citation URLs** - Retrieve the ordered list of citation links behind the answer
- **Related questions** - Optionally return follow-up questions Perplexity suggests for your query
- **Images** - Optionally return relevant images alongside the answer
- **Filter by recency** - Restrict results to the past day, week, month, or year
- **Apify platform benefits** - Access results via REST API, schedule recurring runs with cron expressions, integrate with Zapier/Make/Google Sheets
- **Batch processing** - Submit hundreds of queries in a single run and collect all results from one dataset

### What data can you extract?

| Field              | Type   | Description                                                                                                   |
| ------------------ | ------ | ------------------------------------------------------------------------------------------------------------- |
| `query`            | String | The search query you submitted                                                                                |
| `text`             | String | The full Perplexity answer generated for the query                                                            |
| `sources`          | Array  | Cited sources, each with `title`, `url`, `snippet`, `date`, `lastUpdated`, and `source`                       |
| `citationUrls`     | Array  | URLs of the citations referenced in the answer                                                                |
| `relatedQuestions` | Array  | Follow-up questions related to the query (empty unless requested)                                             |
| `images`           | Array  | Images returned alongside the answer, each with `imageUrl`, `originUrl`, and `title` (empty unless requested) |

### How to scrape Perplexity AI results

1. **Go to the Actor page** - Navigate to [Perplexity Search Scraper](https://apify.com/apify/perplexity-search-scraper) on Apify Store and click **Try for free**.
2. **Enter your search queries** - In the Input tab, type or paste your queries into the **Queries** field, one per line. For example: `best project management tools`, `how does photosynthesis work`.
3. **Set Perplexity options (optional)** - Filter by recency, or enable images and related questions in the **Perplexity options** section.
4. **Start the run** - Click **Start** and wait for the Actor to process your queries. The run time depends on how many queries you submitted - most runs finish within a few minutes.
5. **Export your data** - Once the run completes, go to the **Dataset** tab to preview results. Export as JSON, CSV, Excel, or connect directly to Google Sheets, Zapier, or Make.
6. **Automate with the API** - Use the Apify API or schedule the Actor to run daily or weekly for ongoing Perplexity monitoring. Every run produces a new dataset you can fetch programmatically.

### Input parameters

| Parameter                     | Description                                                     |
| ----------------------------- | --------------------------------------------------------------- |
| **Queries**                   | Your search queries, one per line. Supports bulk input.         |
| **Search recency**            | Restrict results to the past `day`, `week`, `month`, or `year`. |
| **Include images**            | Return relevant images as part of the AI response.              |
| **Include related questions** | Return a list of follow-up questions related to your query.     |

For the full list of options, see the **Input** tab on the Actor page.

### Output example

```json
{
    "query": "what is python",
    "text": "**Python** is a high-level, interpreted, general-purpose programming language known for its simplicity, readability, and versatility...",
    "sources": [
        {
            "title": "Python Programming Language: Definition, Features & Uses - Lenovo",
            "url": "https://www.lenovo.com/us/en/glossary/python/",
            "snippet": "Python is a versatile, high-level programming language known for its simplicity and readability...",
            "date": "2025-08-12",
            "lastUpdated": "2025-12-02",
            "source": "web"
        }
    ],
    "citationUrls": ["https://www.lenovo.com/us/en/glossary/python/", "https://www.python.org/doc/essays/blurb/"],
    "relatedQuestions": [],
    "images": []
}
```

### Failed queries

Every query Perplexity can't return a result for is written to a separate **`errors`** dataset instead of the main one - so your results stay clean and you can still see exactly which queries failed and why. Open it from the **Failed queries** link on the run's output, or under **Storage → Datasets**.

```json
{
    "query": "best web scraping tools 2025",
    "error": "No result returned for the query."
}
```

### Other AI search scrapers on Apify

Perplexity is just one piece of the AI search landscape. Monitor your brand across all major AI-powered search engines:

- **[Google AI Overviews Scraper](https://apify.com/apify/google-ai-overviews-scraper)** - Extract Google AI Overview results, the AI summaries that appear directly on the search results page. Ideal for tracking how Google's AI snippets represent your brand.
- **[Google AI Mode Scraper](https://apify.com/apify/google-ai-mode-scraper)** - Extract Google AI Mode results, the conversational AI answers Google generates for a search query. Track how AI Mode describes your brand and which sources it cites.
- **[Gemini Search Scraper](https://apify.com/apify/gemini-search-scraper)** - Extract Google Gemini search results, the conversational AI answers Gemini generates with cited sources. Track how Gemini describes your brand and which sources it cites.
- **[ChatGPT Search Scraper](https://apify.com/apify/chatgpt-search-scraper)** - Extract AI-generated answers from ChatGPT search and their cited sources. Track how ChatGPT describes your brand and which sources it cites.
- **[Microsoft Copilot Search Scraper](https://apify.com/apify/microsoft-copilot-search-scraper)** - Extract AI-generated answers from Microsoft Copilot and their cited sources. Track how Copilot describes your brand and which sources it cites.
- **[Google Search Results Scraper](https://apify.com/apify/google-search-scraper)** - Extract SERPs organic and paid results, review ratings and People Also Ask. Ideal for AI SEO workflows.

Use these Actors together for comprehensive **AI search monitoring** - understand how every major AI engine presents information about your brand, products, or topics.

### Frequently asked questions

#### Is it legal to scrape Perplexity results?

Web scraping of publicly available data is generally legal in most jurisdictions. Perplexity answers are publicly accessible to anyone performing a search. This Actor collects the same information a regular user would see. Always review and comply with applicable terms of service and local regulations for your specific use case.

#### Is there a Perplexity API?

Perplexity offers a developer API, but it requires you to manage your own API key, billing, and rate limits. Perplexity Search Scraper fills this gap: it provides a **REST API** endpoint that returns structured Perplexity search results - including the answer text, sources, and citation URLs - for any query, with no Perplexity key required. You get an API key with your Apify account and can call it from any programming language or automation tool.

#### What are the best use cases for Perplexity scraping?

The most popular use cases include **SEO and brand monitoring** (track how Perplexity describes your brand), **competitive analysis** (compare how Perplexity answers queries about you vs. competitors), **content research** (discover what sources Perplexity cites for your target topics), and **AI search trend tracking** (monitor how AI-generated answers evolve over time).

#### Can I integrate Perplexity Search Scraper with other tools?

Yes. Apify offers native integrations with **Zapier**, **Make**, **Google Sheets**, **Slack**, **webhooks**, and more. You can also use the **Apify API** or **Apify Python/JavaScript clients** to pull data into your own applications, dashboards, or data pipelines. Schedule runs on any cadence - hourly, daily, weekly - for fully automated monitoring.

# Actor input Schema

## `queries` (type: `string`):

The prompts/queries to send to Perplexity AI. Enter one query per line.

## `perplexitySearch` (type: `object`):

Options that control how Perplexity answers your queries.

## Actor input object example

```json
{
  "queries": "best SEO tools\napify web scraping",
  "perplexitySearch": {
    "returnImages": false,
    "returnRelatedQuestions": false
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

Dataset containing all scraped data

## `errors` (type: `string`):

Queries that returned no Perplexity result, with the failure reason

# 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 = {
    "queries": "What are the top 5 CRM tools",
    "perplexitySearch": {
        "returnImages": false,
        "returnRelatedQuestions": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("apify/perplexity-search-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 = {
    "queries": "What are the top 5 CRM tools",
    "perplexitySearch": {
        "returnImages": False,
        "returnRelatedQuestions": False,
    },
}

# Run the Actor and wait for it to finish
run = client.actor("apify/perplexity-search-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 '{
  "queries": "What are the top 5 CRM tools",
  "perplexitySearch": {
    "returnImages": false,
    "returnRelatedQuestions": false
  }
}' |
apify call apify/perplexity-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/iaDJkfoKSHYkLieg7/builds/fwFOvgPa7LKMv9sue/openapi.json
