# Quora Search Scraper · Keyword Questions & Answers \[No Login] (`memo23/quora-search-scraper`) Actor

From $2/1K 💰 Quora search scraper: enter keywords or a search URL and get matching questions with answer counts, dates and IDs. Paste a question URL for every answer: full text, views, upvotes, comments, author. No login or cookies. JSON, CSV or Excel.

- **URL**: https://apify.com/memo23/quora-search-scraper.md
- **Developed by:** [Muhamed Didovic](https://apify.com/memo23) (community)
- **Categories:** Social media, Lead generation
- **Stats:** 196 total users, 4 monthly users, 100.0% runs succeeded, 16 bookmarks
- **User rating**: 2.08 out of 5 stars

## Pricing

from $2.00 / 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

## Quora Scraper — Questions, Answers, Spaces & Search

### Overview

Uncover valuable insights and expert opinions across a wide range of topics. This Quora scraper extracts questions, full answers, Space posts and engagement metrics, giving you a comprehensive view of discussions on the platform.

**No cookies needed for anything.** Question pages and Space posts are scraped fully logged-out, and keyword search runs on a managed session behind the scenes — so every mode works with zero setup. Just paste URLs or type keywords.

### What you can scrape

| Input | Cookies needed? | What you get |
| --- | --- | --- |
| **Question URL** — `quora.com/How-do-black-holes-form` | ❌ No | Every answer: full text, view count, upvotes, comments, author, credential, timestamps |
| **Space post URL** — `humanity.quora.com/…` | ❌ No | Post body, title, images, views, upvotes, shares, comments, author, owning Space |
| **Keyword search** — `searchQueries: ["machine learning"]` | ❌ No | The answers of the best-matching questions, or one row per matching question (`searchReturns`) |
| **Search URL** — `quora.com/search?q=…` | ❌ No | Same as above |

### Features

- **Cookie-free question scraping** — all answers on a question, paginated to the end, with no account and no cookie export.
- **Space / subdomain posts** — scrape `*.quora.com` Space posts including the owning Space name and engagement metrics.
- **Full answer content** — the complete answer text, not a truncated preview.
- **Answer metrics** — upvotes, view counts and comment counts per answer.
- **Author information** — non-sensitive author details: display name, profile URL and credential.
- **Keyword search, no cookies** — pass plain keywords instead of hand-building search URLs; search runs on a managed session, so no account or cookie export is needed.
- **Customizable** — flexible configuration to suit various scraping needs, with proxy support.

### How to use

1. **Set up:** ensure you have an Apify account.
2. **Configure input:** paste question / Space URLs into **Start URLs**, or enter keywords under **Search keywords**. No cookies or login needed for any of it.
3. **(Optional)** configure proxy settings for enhanced reliability.
4. **Run the scraper.**
5. **Collect data** in JSON, CSV, Excel, HTML or any format Apify supports.

> Advanced: the **Cookies** field is optional and only exists if you want keyword search to run as your own Quora account. Leave it empty otherwise.

### Input examples

#### Question URL — no cookies

```json
{
    "startUrls": [
        { "url": "https://www.quora.com/How-do-black-holes-form" }
    ],
    "maxItems": 100
}
```

#### Space post URL — no cookies

```json
{
    "startUrls": [
        { "url": "https://humanity.quora.com/She-was-the-quiet-strength-behind-his-genius" }
    ],
    "maxItems": 50
}
```

#### Keyword search — no cookies

Give `searchQueries` a list of keywords and each one becomes its own `quora.com/search?q=…` crawl. Keyword results are merged with anything in `startUrls` and de-duplicated, so you can mix the two freely.

```json
{
    "searchQueries": ["machine learning", "remote work"],
    "maxItems": 100
}
```

### Output structure

#### Answer (from a question URL)

```json
{
    "aid": 133425545,
    "id": "QW5zd2VyQDA6MTMzNDI1NTQ1",
    "url": "https://www.quora.com/How-are-black-holes-formed-1/answer/Rishi-Munipalli",
    "content": "Black holes are formed when super massive stars die. To understand how a black hole is formed we first need to understand how a star takes birth…",
    "creationTime": "2019-04-12T04:57:41.316Z",
    "numUpvotes": 52,
    "numViews": 7256,
    "qid": 5479984,
    "isAuthorAnon": false,
    "uid": 239669543,
    "profileUrl": "https://www.quora.com/profile/Rishi-Munipalli",
    "names": [
        { "givenName": "Rishi", "familyName": "Munipalli" }
    ]
}
```

#### Space post (from a `*.quora.com` URL)

```json
{
    "record_type": "space_post",
    "pid": 253578461,
    "id": "UG9zdEAwOjI1MzU3ODQ2MQ==",
    "url": "https://humanity.quora.com/She-was-the-quiet-strength-behind-his-genius",
    "title": "She was the quiet strength behind his genius…",
    "content": "Gabriel García Márquez proposed to Mercedes Barcha at a local dance in Colombia…",
    "images": ["https://qph.cf2.quoracdn.net/main-qimg-…"],
    "numViews": 2189,
    "numUpvotes": 50,
    "numComments": 0,
    "numShares": 1,
    "creationTime": "2026-08-07T00:22:17.446Z",
    "space": { "name": "Humanity", "tribeId": 1575194 },
    "isAuthorAnon": false,
    "uid": 1343396776,
    "profileUrl": "https://www.quora.com/profile/Pusp-L",
    "names": [
        { "givenName": "Pusp L.", "familyName": "" }
    ]
}
```

#### Answer from a search (`searchReturns: "answers"`)

The same answer row as above, plus the search that found it:

```json
{
    "searchQuery": "remote work",
    "questionUrl": "https://www.quora.com/What-are-the-pros-and-cons-of-remote-work",
    "questionTitle": "What are the pros and cons of remote work?"
}
```

#### Question summary (search with `searchReturns: "questions"`)

```json
{
    "index": 1,
    "qid": 101059049,
    "id": "UXVlc3Rpb25AMDoxMDEwNTkwNDk=",
    "url": "https://www.quora.com/What-is-Web3-and-why-does-it-matter",
    "title": "What is Web3, and why does it matter?",
    "creationTime": "2021-09-27T06:20:50.336Z",
    "answerCount": 19
}
```

### FAQ

**Do I need a Quora account or cookies?**
No. Question and Space URLs are scraped logged-out, and keyword search runs on a managed session for you — every mode works with zero setup.

**How many answers do I get per question?**
All of them, up to your `maxItems` limit — the scraper pages through the full answer list.

**Can a keyword search return answers?**
Yes. Set `searchReturns` to `answers` (the default on Quora Search Scraper). Each search opens its best-matching questions and returns their answers, each row tagged with `searchQuery`, `questionUrl` and `questionTitle`. The row limit (`maxItems`, counted per search) is split over the questions, `answersPerQuestion` each (default 5), so 20 rows opens 4 questions. A question with fewer answers leaves its share unused; a search never returns more rows than the limit. With `questions` you get one summary row per matching question instead.

**I have an input saved for another Quora actor. Will it run here?**
Yes. `searchQueries`, `directUrls` and `maxResults` are read as they are: `directUrls` is treated like `startUrls`, `maxResults` is the row limit (50 when an input with `directUrls` leaves it out), and an input with `maxResults` gets answers from its searches. The run log lists each field that was translated. Question pages and Space posts are supported; topic and profile URLs are not.

**Can I search as my own account?**
Yes, optionally — paste your quora.com cookies into the Cookies field and search runs as you. Not required; leave it empty to use the managed session.

### Support

- For issues or feature requests, please use the [Issues](https://console.apify.com/actors/Sll6pBcBHlFnhoPRh/issues) section of this actor.
- If you need customization or have questions, feel free to contact the author:
  - Author's website: <https://muhamed-didovic.github.io/>
  - Email: <muhamed.didovic@gmail.com>

### Additional Services

- Request customization or whole dataset: <muhamed.didovic@gmail.com>
- If you need anything else scraped, or this actor customized, email: <muhamed.didovic@gmail.com>
- For API services of this scraper (no Apify fee, just usage fee for the API), contact: <muhamed.didovic@gmail.com>

### 🤖 For AI Agents & LLM Apps

Compact reference for AI agents calling this actor via the [Apify MCP server](https://mcp.apify.com) or the Apify API (actor: `memo23/quora-scraper`).

**Purpose:** Scrape Quora question answers, Space posts and keyword-search results fully logged-out — full answer text, engagement metrics and non-sensitive author details.

**Minimal input:**

```json
{
    "startUrls": [
        { "url": "https://www.quora.com/How-do-black-holes-form" }
    ],
    "maxItems": 25
}
```

**Output:** one row per answer / Space post / question summary — aid, id, url, content, creationTime, numUpvotes, numViews, qid, isAuthorAnon, uid, profileUrl, names \[{ givenName, familyName }]; Space posts add record_type, pid, title, images, numComments, numShares, space { name, tribeId }; search summaries add index, title, answerCount.

**Behaviors an agent should know:**

- Two input modes: `startUrls` (question pages and `*.quora.com` Space posts) and `searchQueries` (plain keywords, each becomes its own search). They merge and de-duplicate, so you can mix them.
- `searchReturns: "answers"` makes each search return the answers of its top questions (rows tagged `searchQuery`, `questionUrl`, `questionTitle`), `answersPerQuestion` per question; `"questions"` returns one row per matching question. Default: answers on Quora Search Scraper, questions on Quora Scraper.
- No cookies needed for any mode; question/Space URLs run logged-out and keyword search uses a managed session.
- Always set `maxItems`; each answer (or Space post) is one row and a single question can page to hundreds of answers.
- `cookies` is optional — supply your own only to run keyword search as your own Quora account.
- Pay-per-event billing — see the Pricing tab on the actor page.

### ⚠️ Disclaimer

This scraper collects only publicly available data from Quora. It does not bypass any login wall or access private content. Use the data responsibly and in line with Quora's terms of service and applicable data-protection law in your jurisdiction.

### SEO Keywords

quora scraper, quora search scraper, scrape quora search, quora search results scraper, quora keyword search, quora question scraper, quora answer scraper, quora answers export, scrape quora questions, quora space scraper, quora data extraction, quora api, quora content scraper, quora to csv, quora to json, quora topic scraper, quora engagement metrics, quora market research, quora lead generation, quora content research, quora answers to text, quora question search, apify quora scraper

# Actor input Schema

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

Paste Quora URLs, one per line. <b>No login or cookies needed.</b><br><br>Supported: <b>question pages</b> (<code>quora.com/How-do-black-holes-form</code>) — returns every answer with full text, view count, upvotes, comments, author and credential; and <b>Space posts</b> (<code>humanity.quora.com/…</code>) — returns the post body, views, upvotes, shares and the owning Space.<br><br>Leave empty if you only want keyword search below. A run needs at least one of the two.

## `searchQueries` (type: `array`):

Search Quora by keyword — each entry becomes its own search. What a search returns is set by <b>Search returns</b> below: the answers of its top questions, or one row per matching question.<br><br><b>No cookies required.</b> Search runs on a managed logged-in session behind the scenes, so you get results with zero setup — just enter keywords. (You may still supply your own cookies below to search as your own account, but it is optional.)

## `searchReturns` (type: `string`):

<b>answers</b>: each search opens its best-matching questions and returns their answers, tagged with <code>searchQuery</code>, <code>questionUrl</code> and <code>questionTitle</code>. The row limit is split over the questions, <b>Answers per question</b> each.<br><b>questions</b>: one summary row per matching question (title, URL, answer count).<br><br>Leave empty for the listing's default: answers on Quora Search Scraper, questions on Quora Scraper.

## `answersPerQuestion` (type: `integer`):

When searches return answers: how many answers each opened question contributes. With a row limit of 20 and 5 here, a search opens 4 questions. A question with fewer answers leaves its share unused.

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

Maximum number of rows for each URL and each search. Each answer is one row (each Space post is one row).

## `cookies` (type: `array`):

<b>Optional — leave empty.</b> Everything works without cookies: question and Space URLs are scraped logged-out, and keyword search runs on a managed session for you.<br><br>Only fill this in if you specifically want search to run as <b>your own</b> Quora account. Log in to quora.com, export the quora.com cookies with a cookie-editor extension (Cookie-Editor, EditThisCookie) and paste the exported JSON array here.

## `proxy` (type: `object`):

Specifies proxy servers that will be used by the scraper in order to hide its origin.<br><br>For details, see <a href='https://apify.com/apify/web-scraper#proxy-configuration' target='_blank' rel='noopener'>Proxy configuration</a> in README.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.quora.com/How-do-black-holes-form"
    }
  ],
  "searchQueries": [
    "machine learning",
    "remote work"
  ],
  "answersPerQuestion": 5,
  "maxItems": 100,
  "cookies": [],
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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://www.quora.com/How-do-black-holes-form"
        }
    ],
    "searchQueries": [
        "machine learning",
        "remote work"
    ],
    "cookies": [],
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("memo23/quora-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 = {
    "startUrls": [{ "url": "https://www.quora.com/How-do-black-holes-form" }],
    "searchQueries": [
        "machine learning",
        "remote work",
    ],
    "cookies": [],
    "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("memo23/quora-search-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.quora.com/How-do-black-holes-form"
    }
  ],
  "searchQueries": [
    "machine learning",
    "remote work"
  ],
  "cookies": [],
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call memo23/quora-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,memo23/quora-search-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/jGmInnkGHYu700nI7/builds/ASKNqBJvc8n8P6GBB/openapi.json
