Zhihu Scraper 知乎 [Only $3] Answers, Comments, Search 回答 评论 搜索 avatar

Zhihu Scraper 知乎 [Only $3] Answers, Comments, Search 回答 评论 搜索

Pricing

from $3.00 / 1,000 rows

Go to Apify Store
Zhihu Scraper 知乎 [Only $3] Answers, Comments, Search 回答 评论 搜索

Zhihu Scraper 知乎 [Only $3] Answers, Comments, Search 回答 评论 搜索

[Only $3 per 1000 rows] Zhihu (知乎) scraper, no login: 搜索 search sorted by newest or most upvoted with date and type filters, search suggestions, questions with 回答 answers and 评论 comments, user profiles, 热榜 hot list, columns and articles.

Pricing

from $3.00 / 1,000 rows

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

17

Total users

17

Monthly active users

7 hours ago

Last modified

Share

Zhihu Scraper: Questions, Answers, Search, Columns & Articles

Question threads with answers and comments, keyword search, people, the hot list, and public columns and articles, as JSON or CSV. No Zhihu login.

Zhihu shows questions, answers and search only to logged-in visitors. This actor returns them without a login or a cookie, alongside the public column and article pages it has always read.

$3 per 1,000 rows, plus a $0.005 start fee.


Why Use This Scraper?

  • No login. Questions, answers, comments, search and profiles come back without a cookie.
  • Whole threads. A question returns its detail and its answers, 20 a page, each with upvotes, comments and the author; comments and replies on request.
  • Four searches. Content (answers, articles, questions), people, topics and columns.
  • Search filters like on Zhihu itself. Sort by newest (最新发布) or most upvoted (最多赞同), keep to the last day, week, month, 3 or 6 months or year, and pick answers, articles or videos only.
  • Search suggestions. Zhihu's own suggestions for each keyword, for keyword research.
  • People. A profile with follower and post counts, plus that person's answers, articles, pins, followers or following.
  • Hot list. The 30 questions on 热榜 with their heat.
  • Columns and articles with the HTML body. A column list carries the longer HTML of each article.
  • One price. Every row costs the same, and maxItems caps the whole run.

Overview

Rows are told apart by type: question, answer, comment, reply, user, topic, column, pin, hot-question, and the article rows the actor has always returned.

A column URL such as https://zhuanlan.zhihu.com/xuehy pages through that column's public item list. An article URL such as https://zhuanlan.zhihu.com/p/2084570146228664180 fetches that article on its own; that path also returns topics, with a shorter HTML body than the same article inside a column list.


Supported Inputs

InputWhat you get
https://zhuanlan.zhihu.com/{slug}Every article in that column, up to maxItems
https://www.zhihu.com/column/{slug}Same column list
Column slug, e.g. xuehySame column list
https://zhuanlan.zhihu.com/p/{id}One article
Numeric article idOne article

Copy-paste column run:

{
"startUrls": ["https://zhuanlan.zhihu.com/xuehy"],
"maxItems": 20
}

Question, answer and profile links work in startUrls too:

InputWhat you get
https://www.zhihu.com/question/{id}The question and its answers
https://www.zhihu.com/question/{id}/answer/{id}One answer
https://www.zhihu.com/people/{token}The profile, plus the lists chosen in userContent
Keywords in searchKeywords, peopleKeywords, topicKeywords, columnKeywordsSearch results, 20 a page

Question thread with comments:

{
"questionUrls": ["https://www.zhihu.com/question/19550225"],
"maxAnswersPerQuestion": 40,
"includeComments": true,
"maxItems": 500
}

Not supported: https://www.zhihu.com/search?q=... links. Put the keyword in searchKeywords instead.


Use Cases

WhoWhat they do with the rows
ResearchRead a columnist's public essays without clicking through each post
Media monitoringTrack a named column for new titles, votes and comment counts
Market notesPull Chinese-language commentary on a topic a column already covers
ArchivesSave the public HTML of articles you can already open in a browser
AgentsHand a column URL to an Apify call and read a flat article list

How It Works

How the Zhihu scraper works

  1. You pass column URLs, article URLs, slugs or numeric ids.
  2. Each value is classified: column, article, question, answer or profile.
  3. A column is read from Zhihu's public column-items API, page by page, until maxItems or the last page.
  4. An article id that did not already come from a column is fetched from the public article API.
  5. Questions, answers, comments, search, people and the hot list are read from a data source that needs no login.
  6. Each result is pushed as one dataset row. On Apify, that row is the billed result.

Pure HTTP. No browser.


Input Configuration

FieldTypeRequiredNotes
startUrlsstring[]noColumn and article URLs. Prefill: https://zhuanlan.zhihu.com/xuehy. If every list is empty, that column is used.
columnIdsstring[]noSlugs such as xuehy.
articleIdsstring[]noNumeric ids such as 2084570146228664180.
questionUrlsstring[]noQuestion links or ids. Each returns the question and its answers.
maxAnswersPerQuestion / answerOrderinteger / stringnoDefault 20; default ranking or updated (newest first).
answerUrlsstring[]noSingle answers by link or id. They carry text and author; vote counts come with question threads and search.
includeComments / maxCommentsPerAnswerboolean / integernoComment rows for every answer in the run. Default 20 per answer.
includeRepliesbooleannoReply rows under each comment, up to 20 per comment.
searchKeywordsstring[]noContent search: answers, articles and questions.
peopleKeywords / topicKeywords / columnKeywordsstring[]noPeople, topic and column search.
searchSortrelevance | upvoted | newestnoOrder of content search results. Default relevance.
searchTimeRangeall | day | week | month | three_months | half_year | yearnoPublishing window for content search.
searchContentTypeall | answer | article | videonoContent search: only this type.
includeSearchSuggestionsbooleannoOne search-suggestion row per Zhihu suggestion for each searchKeywords entry.
maxResultsPerKeywordintegernoDefault 20.
usersstring[]noProfile links or url tokens.
userContent / maxItemsPerUserstring[] / integernoanswers, articles, pins, followers, following; default 20 rows per list.
includeHotListbooleannoThe 30 questions on the hot list.
maxItemsintegernoDefault 20. Cap on all rows of the run. Free plans cap at 100.
maxConcurrencyintegernoDefault 5. Range 1–20. Applies to article-detail calls. Column pages stay sequential.

Column, 5 articles

{
"startUrls": ["https://zhuanlan.zhihu.com/xuehy"],
"maxItems": 5
}

One article

{
"articleIds": ["2084570146228664180"],
"maxItems": 1
}

Column plus one extra article

{
"startUrls": ["https://zhuanlan.zhihu.com/xuehy"],
"articleIds": ["2082752758818649391"],
"maxItems": 10
}

The column list is collected first. An article id already present in that list is not fetched a second time.


Output Overview

Rows are told apart by type. Article rows from columns and article links are as before: there is no separate column row and no padding row, and the column name is the slug on each article (columnSlug).

An answer row has answerId, url, questionId, questionTitle, text, html, upvotes, comments, favorites, createdAt and the author. A question row has title, detail, answerCount, followerCount, viewCount. A comment or reply row has text, likes, replyCount, ipLocation, parentCommentId. A user row has urlToken, name, headline, followers, answers, articles, ipLocation. A hot-question row adds rank, heat and heatValue.

source is column when the row came from a column list, and article when it came from the article endpoint. Column rows carry the longer HTML. Article rows add topics when Zhihu sends them. contentTruncated follows Zhihu's own guest flag.


Output Samples

Column list, https://zhuanlan.zhihu.com/xuehy, first article. HTML below is cut for the README. The live row's content was 3,015 characters.

{
"entityType": "article",
"articleId": "2084570146228664180",
"title": "复利没那么温柔:为什么十年十倍的故事,你复制不了?",
"excerpt": "“复利”几乎是所有长期投资叙事中最有吸引力的词。…",
"content": "<p>“复利”几乎是所有长期投资叙事中最有吸引力的词。</p>",
"contentTruncated": true,
"voteupCount": 2,
"commentCount": 1,
"authorName": "薛洪言",
"authorHeadline": "星图金融研究院常务副院长、硕士生导师",
"authorId": "4d4d42d4d525a7f8f2c74925fb5f8db7",
"authorUrl": "https://www.zhihu.com/people/xuehongyan",
"columnSlug": "xuehy",
"imageUrl": "https://picx.zhimg.com/v2-9349de0aae106773e9470667658217a3_720w.jpg",
"url": "https://zhuanlan.zhihu.com/p/2084570146228664180",
"createdAt": "2026-09-19T01:18:22.000Z",
"updatedAt": "2026-09-19T01:18:22.000Z",
"topics": [],
"source": "column"
}

The same id fetched as an article (not via the column list) returned content of 769 characters, excerpt of 128 characters, and topics A股(人民币普通股票) and 股票交易策略. Author, votes and comment count matched.


Key Output Fields

Identity

  • articleId, url, entityType (article), source (column or article)
  • columnSlug when the article belongs to a column

Text

  • title, excerpt, content (HTML)
  • contentTruncated — Zhihu's guest flag. A true value can still sit on a multi-thousand-character column body.

Author

  • authorName, authorHeadline, authorId, authorUrl

Engagement

  • voteupCount, commentCount
  • topics — filled on article-detail rows when Zhihu sends them. Column-list rows in the sample above had an empty list.

Media and time

  • imageUrl
  • createdAt, updatedAt — ISO timestamps

FAQ

Does it search Zhihu? Yes. Put keywords in searchKeywords (content), peopleKeywords, topicKeywords or columnKeywords. Questions, answers and comments are returned too, all without a login.

Why do answers given by link have no vote counts? Zhihu's single-answer response carries the text and the author only. Read the question thread, or search, to get upvotes, comments and favorites.

What does a column run actually request? GET https://www.zhihu.com/api/v4/columns/{slug}/items?limit=10&offset=0, then the next offset, until maxItems or Zhihu says the list is finished. Ten articles per page. Pages run one after another.

What does an article run request? GET https://www.zhihu.com/api/v4/articles/{id} with the public fields content, excerpt, voteup_count, comment_count, author, topics and column. The request is signed as a guest. No d_c0 cookie is sent. Sending that cookie is what flips Zhihu into its click-challenge, so the actor leaves it off.

Can I mix a column and an article id? Yes. The column is walked first. If that article id already appeared in the column, it is not fetched again.

What if the slug or id is wrong? A failed column page or article is logged and counted as a failure. The rest of the run continues. A bad id does not produce a billed row, because a row is only pushed after a title comes back.

Is there a free-plan cap? On Apify, accounts that are not on a paid plan are limited to 100 articles per run. The Store's automated tester is limited to 1.

How many retries? Each URL is tried up to 4 times, with a new proxy address each time. A login wall (40353) or an abnormal-request block (40362) stops that URL immediately. Those are not transient proxy errors.

Why is the article HTML shorter than the column HTML? They are different Zhihu endpoints. For article 2084570146228664180 the column list returned 3,015 characters and the article endpoint returned 769. Use a column URL when you want the longer public HTML.

What does contentTruncated: true mean? Zhihu sets that flag on guest responses. It does not mean the field is empty. Paid 盐选 bodies that Zhihu does not show to guests stay on the excerpt.

Will a question id work if I paste the number? A long numeric id is treated as an article id. Question URLs are rejected before any request.

How much does a run cost? $0.005 when the run starts, then $0.003 for each article row. Five articles cost about $0.02.


Support


Additional Services

Need a scheduled column feed, a different field set, or a push into a sheet or warehouse? Custom work is available through the Issues tab.


Explore More Scrapers

Same developer, same pay-per-result model:


🤖 For AI Agents & LLM Apps

Compact reference for agents calling this actor via the Apify MCP server or the Apify API (memo23/zhihu-scraper).

Purpose: Zhihu questions, answers, comments, search, people, hot list, and public column articles. No login.

Minimal input:

{ "startUrls": ["https://zhuanlan.zhihu.com/xuehy"], "maxItems": 5 }

Output fields: entityType, articleId, title, excerpt, content, contentTruncated, voteupCount, commentCount, authorName, authorHeadline, authorId, authorUrl, columnSlug, imageUrl, url, createdAt, updatedAt, topics, source.

Other inputs: questionUrls, answerUrls, searchKeywords, peopleKeywords, topicKeywords, columnKeywords, users (+ userContent), includeComments, includeReplies, includeHotList. Rows carry type: question, answer, comment, reply, user, topic, column, pin, hot-question, search-suggestion. Content search takes searchSort, searchTimeRange, searchContentType.

Billing: $0.005 actor start + $0.003 per dataset row of any type.

Behavior: Column rows have the longer HTML and often empty topics. Article-detail rows are shorter and may include topics. contentTruncated can be true on a full-looking column body. maxItems caps all rows together, comments included.


⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Zhihu Inc. or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available Zhihu column and article pages. It does not log in, and it does not collect search results, questions, answers, or content Zhihu only shows to a signed-in member. Users are responsible for ensuring their use complies with Zhihu's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organization.


SEO Keywords

Zhihu scraper, scrape Zhihu, 知乎 scraper, Zhihu question scraper, Zhihu answers scraper, Zhihu comments, Zhihu search scraper, Zhihu hot list 热榜, Zhihu user scraper, Zhihu no login, Apify Zhihu, zhuanlan articles, zhuanlan.zhihu.com scraper, column article export, Chinese essay archive, author monitoring, public HTML export, media monitoring, China commentary data, guest article body, column feed, article JSON, upvote export, research export, column archive, comment count export