Quora Search Scraper — Questions, Answers, Views & Authors
Pricing
from $0.70 / 1,000 per question delivereds
Quora Search Scraper — Questions, Answers, Views & Authors
Find Quora questions by keyword, topic or URL and get each one with its answers nested: author, credential, full text, upvotes, views, shares, date, plus the question's exact view count, creation date, followers and topics. Logged-out, no cookies. $0.0007/question, $0.0006/answer.
Pricing
from $0.70 / 1,000 per question delivereds
Rating
0.0
(0)
Developer
Scrapers Delight
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Find Quora questions by keyword, topic or URL and get one clean row per question — title, URL, qid, answer count, follower count, comment count, exact view count, creation date, merge count, topics and Quora's own related questions — with the question's answers nested inside the row: author name, profile URL and credential line, full text (plain and Markdown), upvotes, views, shares, comments, answer date, links and images, plus flags for AI-generated, paywalled-preview, collapsed and anonymous answers.
Every number is an exact integer from Quora's own API — numViews: 17851, not the display string
"17.8K" — so nothing is rounded and nothing is approximated. No Quora account needed — and if you
have one, you can optionally paste your own Quora cookie to use Quora's own search for keywords.
{"queries": ["web scraping"],"maxQuestions": 50,"maxAnswersPerQuestion": 10}
Click Try for free and hit Start — that block is the input the Actor ships with. On the
Apify platform (build 0.1.12, 2026-09-23, run oq8X2ZunnrpCa9ccQ) it returned 50 questions and
172 answers in 52 seconds, 50 distinct question ids, charged exactly 50 + 172, with the
question's view count and creation date on 50/50 rows and the answer author on 171/172
answers (the 172nd is an anonymous answer, which Quora publishes without a name).
The wedge: what the other Quora scrapers on the Store don't give you
- Answers nested in the question row, billed per answer. One record type, so your spreadsheet never mixes question rows with answer rows. Every other Quora actor on the Store bills an answer as a whole record: a question with 10 answers costs $0.0067 here vs $0.0088 at the cheapest working rival and $0.0109 at the most-used one.
- Direct answers kept apart from what Quora mixes in. Quora's answer list is not a list of
answers to your question — it interleaves answers written to other questions. Every answer
carries
relation:direct(written to this question),equivalent-question(Quora's "same question, different wording"),related-question, orai(Quora's own AI answer). The default keeps direct answers only — measured on "What is web scraping?": Quora's list held 105 items, of which 42 were direct, exactly Quora'sanswerCountof 42. - Question view count and creation date — exact. Not on Quora's logged-out question page at all;
this Actor reads them with the query Quora's own question-log page uses. 100% filled on every
measured frame — 50/50, 200/200 and 150/150. Also:
mergedQuestionCount(how many duplicate questions Quora folded into this one) andlastFollowedAt. - Honest truncation. When Quora's logged-out list stops before the answers it counts, the row
says so —
answersTruncated: trueplus a plain-EnglishanswersNote— instead of shipping a short list that looks complete. A paywalled Quora Spaces answer is served to logged-out visitors as a cut-off preview; it ships withtextIsPreview: true, never as a whole answer. - Markdown + links + images per answer.
textMarkdownkeeps bold, italics, lists, links, code blocks and embedded images;links[]andimages[]list them separately;wordCountandtextLengthlet you rank by effort.
Read this before you buy rows
- Keyword search runs through the open web, not quora.com/search. Quora's own search is
login-only: logged out,
quora.com/search?q=redirects to the home page and Quora's search API answerssearchConnection: null(measured 2026-09-23 on www, es and de). So a keyword is searched assite:quora.com <keyword>on Brave (then DuckDuckGo, then Bing) and then widened through Quora's own related-question links — keeping only related questions whose title contains every word of your keyword. You get the questions the web ranks for your keyword, not Quora's in-app ranking. Brave returns about 38–75 question links per keyword across its result pages (measured on 8 keywords); the related-question graph carries a keyword past that. To use Quora's own search ranking instead, paste your own logged-in Quora cookie intoquoraCookie(see "How to run it", 6). - Quora's logged-out list does not always serve every answer it counts. On the shipped default
run 9 of 50 questions (44 of 200 and 26 of 150 on the two keyword frames) had fewer direct answers served than
Quora's
answerCount— e.g. "How can I lose weight fast?" counts 16 and serves 2. Quora's own collapsed-answers endpoint reports 0 collapsed answers for it, so the rest are simply not shown to logged-out visitors. Those rows are flagged, never padded. - Unanswered questions are delivered, with
answerCount: 0. Quora moves them to/unanswered/<slug>and this Actor follows it. SetminAnswerCount: 1to skip them (not billed). - Counts are a live snapshot. Views, upvotes and follower counts are read at scrape time.
- Anonymous answers ship with
authorName: nullandauthorProfileUrl: null.
What you get
One row per unique question, de-duplicated run-wide on Quora's qid. Timestamps are UTC ISO-8601.
| Group | Fields | Example (real, run oq8X2ZunnrpCa9ccQ) |
|---|---|---|
| Identity | qid, url, slug, title, language | 200914012 · How can I efficiently scrape data from websites…? · en |
| Engagement | answerCount, followerCount, viewCount, commentCount | 2 · 1 · 1168 · 0 |
| Time | createdAt, lastFollowedAt | 2024-10-15T18:07:42.267Z |
| Structure | topics[], topicUrls[], mergedQuestionCount, isLocked, askerUid | Web Scraping, Web Crawling, … · 0 · false |
| Related | relatedQuestions[] — qid, url, title, answerCount, viewCount, createdAt | What are the best non-coding web scraping tools? · 3,892 views |
| Provenance | source (search / url / topic / related), sourceQuery, sourceEngine, searchRank, scrapedAt | search · web scraping · brave · 3 |
| Answer summary | answersIncluded, answersReturned, answersDirectSeen, answersEquivalentSeen, answersRelatedSeen, answersAiSeen, answerListExhausted, answersTruncated, answersNote, statsAvailable | 2 · 2 · false |
| Answers | answers[] — see below |
Each entry in answers[]:
| Group | Fields |
|---|---|
| Identity | answerId, url, listPosition, relation, isDirectAnswer, isAiGenerated, answeredQuestionUrl, answeredQuestionTitle (non-direct answers only) |
| Author | authorName, authorProfileUrl, authorCredential, authorIsVerified, authorAnswerCount, authorTotalViews, isAnonymous |
| Content | text, textMarkdown, textLength, wordCount, links[], images[] |
| Engagement | upvotes, views, shares, comments |
| Time | createdAt, updatedAt |
| Flags | isCollapsed, isDeleted, moderationCollapseType, isPaywalled, viewerHasAccess, textIsPreview |
The dataset ships with two saved views: Quora questions (one line per question) and Answers
(one line per answer, unwound from answers[], ready for a CSV).
Field fill — measured, three sampling frames
Frame 1 = the shipped default ({}, keyword "web scraping", run oq8X2ZunnrpCa9ccQ, 50 questions,
172 answers). Frame 2 = "home insurance", "electric cars", "remote work tips", "best laptop for
students" (run O6RJeQleSc0gbIouT, 200 questions, 687 answers). Frame 3 = "credit card rewards",
"learn guitar", "moving to canada", "small business marketing" (run OyNrYgxGFh6fO0xRG, 150
questions, 680 answers). Quote a range, not a single number.
Question rows
| Field | Frame 1 | Frame 2 | Frame 3 | Note |
|---|---|---|---|---|
| qid, url, title, slug, answerCount, followerCount, topics, relatedQuestions, source | 100% | 100% | 100% | |
| viewCount, createdAt, mergedQuestionCount | 100% | 100% | 100% | |
| commentCount, isLocked | 90% | 93% | 95% | Quora omits them on some questions — null, never 0 |
| lastFollowedAt | 94% | 80% | 74% | null when nobody ever followed the question |
| answersNote | 18% | 22% | 17% | present exactly when the answer list is truncated |
Answers (default scope direct)
| Field | Frame 1 | Frame 2 | Frame 3 | Note |
|---|---|---|---|---|
| answerId, url, upvotes, views, shares, comments, createdAt | 100% | 100% | 100% | |
| text, textMarkdown | 100% | 99.9% | 100% | one image-only answer carries no text |
| authorName, authorProfileUrl | 99.4% | 100% | 99.0% | the rest are anonymous answers (isAnonymous: true) |
| authorCredential | 83% | 88% | 86% | null when the author never wrote a credential line |
| authorAnswerCount, authorTotalViews | 41% | 76% | 70% | Quora shows the author fact box on some answers only |
| links | 40% | 12% | 10% | answers that cite a link |
| images | 12% | 10% | 7% | answers with an embedded image |
| updatedAt | 16% | 13% | 14% | only answers edited after posting |
| isPaywalled true / textIsPreview true | 2.3% / 1.7% | 8.0% / 3.3% | 7.9% / 4.0% | Quora Spaces paywall |
| answeredQuestionTitle | 0% | 0% | 0% | by design — only set on non-direct answers; 91/91 filled on an answerScope: "all" run (T4dfP5HYLUdaGf2Bd) |
| isAiGenerated true | 0% | 0% | 0% | off by default; 4 of 120 answers on the includeAiAnswers: true run |
How to run it
1. Keyword research (the usual choice)
{"queries": ["best crm for small business", "crm for startups"],"maxQuestions": 100,"maxAnswersPerQuestion": 10,"strictSearch": true}
2. Specific questions — full answer lists
{"queries": [],"questionUrls": ["https://www.quora.com/What-is-web-scraping"],"maxAnswersPerQuestion": 100}
Measured: "What is web scraping?" → 42 direct answers of Quora's 42.
3. A topic's questions
{"queries": [],"topics": ["Web Scraping"],"maxQuestionsPerQuery": 30}
Quora serves about 30 feed items per topic to logged-out visitors (measured: the feed ends after 3 pages even in a real browser); related questions widen it from there.
4. Brand / GEO monitor — recent questions only, questions without answers skipped
{"queries": ["notion vs obsidian"],"dateFrom": "2025-01-01","minAnswerCount": 1,"answerScope": "equivalent"}
5. Question rows only (cheapest)
{ "queries": ["home insurance"], "includeAnswers": false, "maxQuestions": 200 }
6. Quora's own search, with your own cookie
{"queries": ["best crm for small business"],"quoraCookie": "<paste the whole cookie header from your logged-in quora.com session>","maxQuestions": 50}
Open quora.com while logged in, open DevTools → Network, click any request to quora.com and copy the
whole cookie request header (it contains m-b, m-lat and similar values). The field is stored as
a secret. With it, each keyword is searched with Quora's own search (rows get
sourceEngine: "quora-native"); question rows and answers are still read the logged-out way, so the
row format is identical. If the cookie has expired or is not accepted, the run does not fail: it
falls back to web-search discovery and RUN_SUMMARY.nativeSearch says why. Billing is the same.
Schedule any of these in Apify (daily / weekly) and send the dataset to Google Sheets, Slack, Make, Zapier or a webhook with Apify's integrations.
Sample row
A real row from the shipped-default run (oq8X2ZunnrpCa9ccQ, 2026-09-23). topics and
relatedQuestions are cut to a few entries here; the row had 15 topics and 10 related questions.
{"qid": 200914012,"url": "https://www.quora.com/How-can-I-efficiently-scrape-data-from-websites-using-web-scraping-and-web-crawling-tools-1","title": "How can I efficiently scrape data from websites using web scraping and web crawling tools?","slug": "How-can-I-efficiently-scrape-data-from-websites-using-web-scraping-and-web-crawling-tools-1","askerUid": 141307929,"answerCount": 2,"followerCount": 1,"viewCount": 1168,"commentCount": 0,"createdAt": "2024-10-15T18:07:42.267Z","lastFollowedAt": "2024-10-15T18:07:42.307Z","mergedQuestionCount": 0,"isLocked": false,"language": "en","topics": ["Data Collection", "Web Analytics", "Web Scraping", "Web Crawling"],"topicUrls": ["https://www.quora.com/topic/Data-Collection", "https://www.quora.com/topic/Web-Analytics", "https://www.quora.com/topic/Web-Scraping", "https://www.quora.com/topic/Web-Crawling"],"source": "search","sourceQuery": "web scraping","sourceEngine": "brave","searchRank": 3,"relatedQuestions": [{ "qid": 124468593, "url": "https://www.quora.com/What-are-the-best-non-coding-web-scraping-tools", "title": "What are the best non-coding web scraping tools?", "answerCount": 2, "viewCount": 3892, "createdAt": "2022-08-02T07:21:22.793Z" }],"answersIncluded": true,"answers": [{"answerId": "1477743820340759","url": "https://www.quora.com/How-can-I-efficiently-scrape-data-from-websites-using-web-scraping-and-web-crawling-tools-1/answer/SoLostOMG","listPosition": 0,"relation": "direct","isDirectAnswer": true,"isAiGenerated": false,"answeredQuestionUrl": "https://www.quora.com/How-can-I-efficiently-scrape-data-from-websites-using-web-scraping-and-web-crawling-tools-1","answeredQuestionTitle": null,"authorName": "SoLostOMG","authorProfileUrl": "https://www.quora.com/profile/SoLostOMG","authorCredential": "I know a few things about web scraping","authorIsVerified": false,"authorAnswerCount": null,"authorTotalViews": null,"isAnonymous": false,"text": "For starter, you may want to take a look at Scrapy, along with BeautifulSoup. There are other options but this is what I use. Then once you get a hang of scraping a simple HTML website, Scrapy Playwright should be the next tool for dynamic websites. Also a little python knowledge is compulsory","textMarkdown": "For starter, you may want to take a look at Scrapy, along with BeautifulSoup. There are other options but this is what I use. Then once you get a hang of scraping a simple HTML website, Scrapy Playwright should be the next tool for dynamic websites. Also a little python knowledge is compulsory\n\n[Scrapy 2.19 documentation](https://doc.scrapy.org/)","textLength": 294,"wordCount": 53,"links": ["https://doc.scrapy.org/"],"images": [],"upvotes": 0,"views": 401,"shares": 0,"comments": 0,"createdAt": "2024-10-16T02:42:40.013Z","updatedAt": null,"isCollapsed": false,"isDeleted": false,"moderationCollapseType": null,"isPaywalled": false,"viewerHasAccess": true,"textIsPreview": false}],"answersReturned": 2,"answersDirectSeen": 2,"answersEquivalentSeen": 0,"answersRelatedSeen": 0,"answersAiSeen": 0,"answerListExhausted": false,"answersTruncated": false,"answersNote": null,"statsAvailable": true,"scrapedAt": "2026-09-23T06:05:51.207Z"}
(The row's second answer, by "Future Read AI Solution", is omitted above for length.)
Input
| Field | Default | What it does |
|---|---|---|
queries | ["web scraping"] | Keyword phrases, one per line. Searched as site:quora.com on the web, then widened through related questions. |
questionUrls | [] | Question URLs (also answer permalinks, ?share=1, /unanswered/, language editions). Merged questions follow the merge. |
topics | [] | Topic names or /topic/ URLs. |
quoraCookie | — | Optional, secret. Your own logged-in Quora cookie header; keywords then use Quora's own search. |
maxQuestions | 50 | Total unique questions. Your hard cap on the question charge. 0 = no limit. |
maxQuestionsPerQuery | 50 | Per keyword / topic cap. Pasted URLs are never capped by it. |
includeAnswers | true | Nest answers into answers[]. |
maxAnswersPerQuestion | 10 | Answers per question (1–1000), Quora's own ranking order. |
answerScope | direct | direct · equivalent (+ equivalent-question answers) · all (everything Quora shows). |
includeAiAnswers | false | Include Quora's AI-written answer, flagged isAiGenerated. |
expandRelated | true | Widen through Quora's related questions (title must contain every keyword word). |
strictSearch | false | Keep only questions whose title contains every keyword word. |
minAnswerCount | 0 | Skip questions with fewer answers (not billed). |
dateFrom / dateTo | — | Question creation window, YYYY-MM-DD UTC (not billed when outside). |
includeQuestionStats | true | View count, creation date, merges, last follow (one extra request per question). |
maxRelatedQuestions | 10 | Related questions listed per row (0–50, free). |
residentialFallback | true | Use Apify RESIDENTIAL only when direct requests stay challenged. |
proxyConfiguration | direct | Route everything through your own proxy instead. |
concurrency | 4 | Questions read in parallel (1–8). |
Pricing
Pay per event — you pay only for what is delivered:
| Event | Price | When |
|---|---|---|
question-scraped | $0.0007 | once per unique question delivered |
answer-scraped | $0.0006 | once per answer nested in a delivered question |
No start fee. Filtered-out questions, URLs that are not live questions and questions Quora would not serve after retries cost nothing, and a question found by two keywords is billed once.
- The shipped default (50 questions, ≤10 answers each) costs at most $0.335; the measured run cost $0.1382 (50 × $0.0007 + 172 × $0.0006).
- 1,000 questions without answers: $0.70. 1,000 questions with ~3.5 answers each (the measured average at a 10-answer cap): about $2.80.
For comparison (Store, 2026-09-23): the cheapest working Quora actor that bills questions charges $0.0008 per record plus $0.005 per run and bills every answer as a full record; the cheapest answer-only actor charges $0.00069 per answer plus $0.002 per run and has no keyword search.
Limits
- Keyword discovery is web-search based unless you supply
quoraCookie(see "Read this before you buy"). If Brave refuses the run's IP, the Actor retries it on a residential IP, then tries DuckDuckGo and Bing — which in our measurements return 0–1 Quora links per keyword from Apify's network. A keyword whose results the engines refuse outright yields its questions only from any other keyword's related graph. - Logged-out answer lists can be short — 18–21% of questions in our two frames. Flagged per row.
- Topic feeds are shallow logged-out (~30 items per topic). Related questions widen them.
- Quora sits behind Cloudflare. The Actor passes it with a real browser TLS fingerprint and
retries challenges on fresh connections; on a busy or burnt Apify IP it falls back to Apify
RESIDENTIAL. A question that is still refused after 8 attempts is reported in
RUN_SUMMARYas unreachable and not billed. Measured: 0 unreachable in 350 questions on the two keyword frames. - Spaces posts, profiles and answer comments are out of scope — this Actor does questions and their answers.
How it works
- Discovery — keywords:
site:quora.comresult pages on Brave → DuckDuckGo → Bing, question URLs canonicalised and de-duplicated. Topics: Quora's own logged-out topic feed (GraphQLTopicReadMultifeedLoggedOut_Query→MultifeedQuery). Then Quora's related-question graph. - Question page — the Relay payload Quora embeds for its own front end: question, counts,
topics, related questions, the first answers and the answer-list cursor. Merged questions (301)
and unanswered questions (
/unanswered/) are followed. - Question stats — the question's exact view count, creation date and merge count, from the
GraphQL query Quora's own question-log page runs (
ContentLogPageLoadableQuery). - Answers — Quora's own persisted GraphQL query
QuestionPagedListPaginationQuery, paged by cursor as JSON, until the answer cap, Quora's ownanswerCount, or the end of the list. - Billing — each row is charged first, then pushed exactly as charged; the run asserts that no question was delivered twice.
Transport, measured from Apify's network on 2026-09-23: curl / got-scraping fingerprints get
Cloudflare's "Just a moment…" 403 on every URL; Chrome, Chrome 131 and Chrome 136 fingerprints 0 of
18 (Chrome 142: 1 of 6); a Firefox 144
fingerprint direct from Apify cleared 12 of 12 question pages and 12 of 12 GraphQL calls with
no proxy at all. That is the default rung. Challenges are retried on fresh connections; RESIDENTIAL
is the last resort because it costs ~88 KB of proxy transfer per question. One more thing we
measured and designed around: loading Quora's /log pages trips Cloudflare's per-IP limiter after
about 100 of them, after which even question pages answer HTTP 429 — so the view count and creation
date come from the log page's 3.6 KB GraphQL query instead (0 challenges in 1,174 GraphQL calls on
the two keyword frames), and the page is only a paced fallback.
Every run writes RUN_SUMMARY to its key-value store: delivered counts, the three kinds of nothing
kept apart (not a live question / removed by your filters / unreachable after retries), discovery
counters and per-request-type transport outcomes.
Who buys this
- Brand monitoring & social listening — what people ask and answer about your product and your competitors, with the view counts that tell you which threads matter.
- GEO / AI-visibility agencies — Quora is one of the most-cited sources in LLM answers; find the high-view questions in your niche and see who answers them.
- Content & SEO teams — real questions with real demand (
viewCount,followerCount) for FAQ pages, blog briefs and product copy. - Market research — answer text at scale, with author credentials to weight expertise.
Its sibling: Reddit Search Scraper — the same mental model (keywords in, one row per post, comments nested) for Reddit.
FAQ
Do I need a Quora account? No. Without quoraCookie the Actor sees what any logged-out visitor
sees. With it, only the keyword search runs under your session.
Why do some rows have fewer answers than answerCount? Quora does not serve every counted
answer to logged-out visitors. The row says so in answersTruncated / answersNote.
Why is viewCount null on a row? Its log page was not served after retries —
statsAvailable: false marks it. 0 of 400 on the measured frames.
Can I get Quora's own search ranking? Yes — paste your own Quora cookie into quoraCookie
("How to run it", 6). Without it, keywords are discovered through web search.
What happens if my cookie expires? The run falls back to web-search discovery and says so in
RUN_SUMMARY.nativeSearch (status: "invalid"). It never fails because of the cookie.
Are the numbers rounded? No. They are the integers Quora's API returns.
Disclaimer
This Actor reads only publicly available Quora data. Answers include authors' public names and profile links; you are responsible for how you use the extracted data. This Actor is not affiliated with, endorsed by, or connected to Quora.
Feedback
Found a question that parses wrong, or a field you need? Open an issue on the Actor's Issues tab with the question URL and the run ID — every fix ships with a regression test on the real bytes.