# Quora Answers Scraper - Questions & Profiles, No Login (`benthepythondev/quora-answers-scraper`) Actor

Exports Quora answers from question, answer and profile links: full answer text, upvotes, views, shares, comment count, date, author name, credential and profile link, plus the question and its answer count. Can follow related questions to build a topic dataset. No login, no cookies.

- **URL**: https://apify.com/benthepythondev/quora-answers-scraper.md
- **Developed by:** [Ben](https://apify.com/benthepythondev) (community)
- **Categories:** Social media, Lead generation, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## 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 Answers Scraper: Questions & Profiles, No Login

Export **Quora answers** from question links, answer links and profile links: the full answer text, upvotes, views, shares, comment count, the date it was written and last edited, the author's name, credential, profile link and picture, plus the question and how many answers Quora counts on it. Give one or two seed questions and let the Actor **follow related questions** to build a topic dataset. Plain HTTP, no browser, no login, no cookies. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

**What a run costs** (pay per answer saved; pages Quora does not show and errors cost nothing):

| | Free plan | Bronze | Silver | Gold and up |
|---|---|---|---|---|
| Answer row | $0.0008 | $0.00072 | $0.00068 | $0.00064 |

Plus $0.00005 per run start. **Until November 8, 2026 every answer costs $0.0025**, the price this Actor's listing had before; the table above applies from that day. 1,000 answers then cost $0.80 on the Free plan.

### ⚡ What it does better

What users report on other Quora Actors, and what this one does:

| Reported elsewhere | Here |
|---|---|
| "Runs return no records since around 6 September" | Reads question and profile pages through the calls Quora's own pages make to a logged-out visitor, not through keyword search (which Quora no longer serves to visitors) |
| "Is it possible to get questions from a topic?" | Topic pages need a login. Instead, give a seed question and set **Related questions to follow**: the Actor reads the questions Quora lists as related (one seed question about starting a small business gave 8 related questions and 563 answers in one run) |
| Only the first couple of answers of a question | Pages through the answer list 10 at a time: up to ~80 answers per question, more when Quora merged duplicate questions into it |
| No numbers to rank answers by | Every row has upvotes, views, shares, comment count and the exact date |

### 🔎 What is the Quora Answers Scraper?

Quora is a question-and-answer site with hundreds of millions of answers written by practitioners, founders, doctors, engineers and hobbyists. This Actor reads what Quora shows a visitor who is not logged in, and saves **one row per answer**.

#### What data does it extract?

- **Answer:** id, link, full text (paragraphs and list items kept as lines), image links, outbound links
- **Engagement:** upvotes, views, shares, number of comments
- **Dates:** when the answer was written and when it was last edited (ISO 8601, UTC)
- **Author:** name, Quora user id, profile link, picture, verified flag, the credential shown with the answer (for example "Founder at …" or "Studied at …"), anonymous and AI-account flags
- **Question:** id, text, link, number of answers Quora counts on it
- **Position:** rank of the answer on the question or profile list, and the input link it came from

### ⬇️ Input

| Field | What it does | Default |
|---|---|---|
| `startUrls` | Question links, answer links (the whole question is read) or profile links. Language sites (es.quora.com, de.quora.com …) work too | a sample question |
| `maxAnswersPerQuestion` | Most answers saved per link (1–100) | 20 |
| `relatedQuestions` | How many related questions to read as well (0–200). Each saves up to the per-question limit | 0 |
| `profileSort` | For profiles: `both` (newest and most viewed, up to 60 different answers), `recent` or `viewed` | both |

Input names of other Quora Actors (`urls`, `maxItems`, `maxItemsPerQuery`) are read too.

#### Example input

```json
{
  "startUrls": [
    "https://www.quora.com/How-do-I-start-a-small-business",
    "https://www.quora.com/profile/Adam-DAngelo"
  ],
  "maxAnswersPerQuestion": 100,
  "relatedQuestions": 3
}
```

That run took 20 seconds and saved 437 answers: 80 from the question, 57 from the profile and 300 from three related questions.

### ⬆️ Output

One row per answer (a real row, text shortened):

```json
{
  "answerId": "74810042",
  "answerUrl": "https://www.quora.com/I-want-to-start-a-business-but-I-dont-have-money-What-do-I-do/answer/Hector-Quintanilla",
  "questionId": "2122825",
  "question": "I want to start a business but I don't have money. What do I do?",
  "questionUrl": "https://www.quora.com/I-want-to-start-a-business-but-I-dont-have-money-What-do-I-do",
  "questionAnswerCount": 920,
  "text": "No money is a disaster!\nLet me help you BEFORE you suffer more!\n…",
  "images": ["https://qph.cf2.quoracdn.net/main-qimg-20e2493a155be166dd25a3ae19acc64c.webp"],
  "links": [],
  "upvotes": 13261,
  "views": 1120932,
  "shares": 1635,
  "comments": 369,
  "createdAt": "2018-03-02T03:15:35.745545+00:00",
  "updatedAt": "2019-03-08T05:06:26.070551+00:00",
  "authorName": "Hector Quintanilla",
  "authorId": "27072532",
  "authorUrl": "https://www.quora.com/profile/Hector-Quintanilla",
  "authorImage": "https://qph.cf2.quoracdn.net/main-thumb-27072532-200-aykruqcjlisziiobyoymwiwgvgillygx.jpeg",
  "authorVerified": false,
  "authorCredential": "Founder at BeBusinessSmart.com (2019-present)",
  "anonymous": false,
  "aiAnswer": false,
  "rank": 45,
  "target": "question:www.quora.com/what-are-some-good-businesses-that-can-be-started-with-a-very-small-capital",
  "scrapedAt": "2026-10-25T21:45:31.362132+00:00"
}
```

A summary of every run (answers per link, links Quora did not show, why a run stopped) is stored as `SUMMARY` in the run's key-value store.

### 🤖 For AI agents

One input to copy; no credential is needed:

```json
{"startUrls": ["https://www.quora.com/What-is-the-best-way-to-learn-Python"], "maxAnswersPerQuestion": 30, "relatedQuestions": 5}
```

Rows are plain JSON with the answer text in `text` and the numbers to rank by in `upvotes` and `views`.

### 💡 Use cases

- 🧠 **LLM and RAG datasets:** real question-and-answer pairs with authors, credentials and engagement to weigh them
- 📈 **Market and product research:** what people ask and answer about a product, a niche or a competitor, ranked by views
- ✍️ **Content ideas:** the answers that got the most upvotes on the questions your audience asks, for blog posts and FAQs
- 🔎 **Expert discovery:** authors with relevant credentials and high-view answers in your field, with their profile links

### ⚠️ Limits

- **About 80 answers per question.** Quora shows a visitor the top answers of a question and stops there, also when it counts thousands (one question with 6,074 answers listed 82). When Quora merged duplicate questions into one, their answers come along and a question can give 100.
- **60 answers per profile.** A visitor gets the 30 newest and the 30 most viewed answers of a profile.
- **No keyword search, topics or spaces.** Quora answers those only to a logged-in user. Use related questions to widen a dataset from seed questions.
- **No comments or upvoter lists**, only their counts.
- Quora turns datacenter addresses away, so the Actor reads through residential addresses; their traffic is included in the price.

### ❓ FAQ

**Do I need a Quora account or cookies?** No. The Actor reads what Quora shows any visitor.

**Can I search Quora by keyword?** Not any more: Quora stopped answering keyword searches for visitors. Start from a question you found on Quora or in a search engine and set `relatedQuestions`.

**Why did I get fewer answers than the question shows?** Quora shows a visitor about 80 answers per question. The run's status message and `SUMMARY` say how many each link gave.

**Which answers come first?** The order Quora shows them in, which is mostly by quality and upvotes. `rank` keeps that position.

**Does it work for Quora in other languages?** Yes, give a link on es.quora.com, fr.quora.com, de.quora.com and so on.

**What happens with a question that does not exist?** It is reported as "No such page" in the status message and costs nothing.

**Can I run it on a schedule?** Yes. Each run saves the answers again with current upvotes and views, so a schedule tracks how answers grow.

**Is it legal to scrape Quora?** The Actor reads publicly visible pages without logging in. Answers are written by people: use the data in line with Quora's terms, copyright and privacy law (GDPR, CCPA), quote with attribution, and do not use author data for unsolicited messages (CAN-SPAM).

**What does `aiAnswer` mean?** Quora marks some answers as written by its AI accounts; those rows have `aiAnswer: true` so you can drop them.

### 🔗 You might also like

- [Reddit Scraper](https://apify.com/benthepythondev/reddit-scraper): posts and comments from Reddit
- [Reddit Comments Scraper](https://apify.com/benthepythondev/reddit-comments-scraper): whole comment threads
- [YouTube Comments Scraper](https://apify.com/benthepythondev/youtube-comments-scraper): comments of any video
- [Threads Public Scraper](https://apify.com/benthepythondev/threads-public-scraper): posts and replies from Threads

**Keywords:** quora scraper, quora answers scraper, quora api, scrape quora, quora data export, quora answers csv, quora questions scraper, quora profile scraper, quora upvotes views, quora dataset, quora no login, quora research, q\&a dataset, llm training data quora, quora content ideas, quora expert finder, quora related questions

# Actor input Schema

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

Question links (https://www.quora.com/<question>), answer links (…/answer/<name>, reads the whole question) or profile links (https://www.quora.com/profile/<name>). Language sites such as es.quora.com work too. Topics, spaces and search need a login and are skipped.

## `maxAnswersPerQuestion` (type: `integer`):

Most answers saved per link. Quora shows a visitor the top ~80 answers of a question and 30 newest plus 30 most viewed answers of a profile.

## `relatedQuestions` (type: `integer`):

Also read this many related questions that Quora lists on the given question pages (0 = only the given links). Each related question saves up to the per-question limit. Use it to build a topic dataset from one or two seed questions.

## `profileSort` (type: `string`):

Which answers of a profile to read: newest, most viewed, or both (up to 60 different answers).

## `debug` (type: `boolean`):

Log every request.

## Actor input object example

```json
{
  "startUrls": [
    "https://www.quora.com/What-is-the-best-way-to-learn-Python"
  ],
  "maxAnswersPerQuestion": 20,
  "relatedQuestions": 0,
  "profileSort": "both",
  "debug": false
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `summary` (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": [
        "https://www.quora.com/What-is-the-best-way-to-learn-Python"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("benthepythondev/quora-answers-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": ["https://www.quora.com/What-is-the-best-way-to-learn-Python"] }

# Run the Actor and wait for it to finish
run = client.actor("benthepythondev/quora-answers-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": [
    "https://www.quora.com/What-is-the-best-way-to-learn-Python"
  ]
}' |
apify call benthepythondev/quora-answers-scraper --silent --output-dataset

```

## MCP server setup

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