Extract structured data from zhihu.com — zhihu.com — trending hot-list questions (热榜), full Q&A answers with text and engagement counts, and author profiles as structured data. No login or API key required. Incremental mode flags new and changed records for monitoring and AI pipelines.
No credit card required. No commitment. Cancel anytime.
- Click sign up — pick GitHub, Google, or email; takes ~30 seconds
- Open this actor — input is pre-filled with a working example
- Click Start — export results as JSON, CSV, or Excel
Your $5 monthly platform credit is enough to run this actor right away — and again every month — scraping typically several hundred to several thousand results per run, depending on your input.
Incremental mode — Only get new or changed listings since your last run. Content hash per listing — no duplicates, no re-processing.
Change classification — Track unchanged across runs. Build audit trails of how listings evolve over time.
Compact output — Emit core fields only (AI-agent / MCP-friendly). Keeps response size small for LLM workflows.
Proxy support — Route traffic through Apify Proxy or your own proxy group to avoid regional blocks and rate limits.
Export anywhere — Download as JSON, CSV, or Excel. Stream via Apify API, webhooks, or integrations with Make, Zapier, Airbyte, Keboola.
Structured data — Every listing returns the same schema with consistent field naming. All fields always present — null when unavailable, never omitted.
Data pipeline automation Integrate with your ETL pipeline to collect structured listings from zhihu.com on a schedule. Export to CSV, JSON, or directly to your database. Use compact mode to control output size.
Market research Monitor listings, track trends, and analyze market dynamics with structured, deduplicated data from zhihu.com.
Change monitoring Run daily or hourly in incremental mode to capture only new, updated, or expired listings. Perfect for price-tracking, churn analysis, and alerting pipelines.
AI / LLM training data Structured JSON per listing is ready for RAG pipelines, embeddings, and agent workflows. Compact mode trims tokens for LLM context windows.
{
"maxResults": 50
}| Parameter | Type | Default | Description |
|---|---|---|---|
operation |
enum | "hotList" |
What to scrape. Hot List = today's trending questions (热榜). Questions = full question + answers for the URLs you supply. Profiles = author profile stats for the URLs you supply. |
limit |
integer | 50 |
Number of trending questions to fetch (Hot List operation). 1–100. |
startUrls |
array | — | For Questions: question URLs (https://www.zhihu.com/question/12345) or bare ids. For Profiles: profile URLs (https://www.zhihu.com/people/token) or bare tokens. |
includeAnswers |
boolean | true |
Fetch each question's page for the full question detail + first-page answers (with full text and engagement). Turn off for a fast trending snapshot (Hot List metadata only). |
maxAnswersPerQuestion |
integer | 0 |
Cap answers emitted per question. 0 = all embedded first-page answers. |
proxyConfiguration |
object | {"useApifyProxy":true} |
Proxy configuration. Recommended for reliable access. |
compact |
boolean | false |
Output only core fields (for AI-agent / MCP workflows). |
excludeEmptyFields |
boolean | false |
Drop null, empty-string, and empty-array fields from each record before push. |
incrementalMode |
boolean | false |
Compare against previous run state and tag each record NEW / CHANGED / UNCHANGED. stateKey is optional — defaults to a stable key derived from the operation and targets. |
stateKey |
string | — | Optional. Stable identifier for the tracked set (e.g. "zhihu-hotlist"). Leave empty to auto-generate. |
emitUnchanged |
boolean | false |
When incremental, also emit records that haven't changed. |
telegramToken |
string | — | Telegram bot token (from @BotFather). Required for Telegram notifications. |
telegramChatId |
string | — | Telegram chat or channel ID (e.g. "-100123456789"). Required when telegramToken is set. |
discordWebhookUrl |
string | — | Discord incoming webhook URL. Server Settings → Integrations → Webhooks. |
slackWebhookUrl |
string | — | Slack incoming webhook URL. api.slack.com/messaging/webhooks. |
webhookUrl |
string | — | Receives a JSON POST with {metadata, items} after each run. For n8n / Make / Zapier / custom backends. |
webhookHeaders |
object | — | Optional JSON object of custom headers (e.g. {"Authorization":"Bearer ..."}). |
notificationLimit |
integer | 5 |
Maximum number of records included in each notification message (1–20). |
notifyOnlyChanges |
boolean | false |
When Incremental Mode is on, only notify for NEW and CHANGED records. |
appConnector |
string | — | Optional. Pick a connected app under Settings → API & Integrations to receive your results. Best-effort across MCP connectors as Apify expands its catalog. |
mcpIssueTeam |
string | — | Only when the connected app is an issue tracker: the team the summary issue is created under. |
Every listing returns the same 26-field schema. Missing values are null — never omitted.
typeidrecordIdurltitleexcerptcontentcontentLengthvoteupCountcommentCountanswerCountfollowerCountthanksCountviewCounthotRankhotHeatauthorNameauthorUrlTokenauthorHeadlineauthorFollowerCountquestionIdquestionTitletopicscreatedTimeupdatedTimefetchedAt
One object per listing. Here is a real example from a production run:
{
"type": "question",
"id": "2061371759589323800",
"recordId": "zhihu.com:question:2061371759589323800",
"url": "https://www.zhihu.com/question/2061371759589323800",
"title": "经济学家任泽平 VIP 付费会员群「暴雷」,有人听信操作建议亏损 1000多万,你如何看这种现象?",
"excerpt": "科技股持续下跌,网红经济学家任泽平站上风口浪尖。此前,任泽平持续看好科技牛行情,指出AI科技牛是康波周期量级的机会,天花板远远没有看到,是这代人最重要的时代机遇。 此前科技股走出了波澜壮阔的行情,双创指数均创下历史新高,然而近期韩国“存储双雄”跳水,引发A股连锁反应,科技股遭遇踩踏行情。 据报道,近期群名为“泽平宏观VIP群30”的付费会员群出现投资者激烈控…",
"content": null,
"contentLength": 0,
"voteupCount": null,
"commentCount": 0,
"answerCount": 192,
"followerCount": 439
}Truncated — full records contain 26 fields. See Output fields for the complete schema.
Try Zhihu Scraper now — $5 free credit, no credit card →
Pay only for what you extract. No subscription required — Apify's free $5 credit covers thousands of results.
| Event | Price (USD) |
|---|---|
| Actor Start | $0.01 |
| Result | $0.003 |
See the actor on Apify for current pricing.
How do I scrape zhihu.com? Use this actor on Apify to extract structured data from zhihu.com. Configure your search query and filters in the input, then click Start — no coding required.
How do I get zhihu.com data as JSON, CSV, or Excel? The actor writes each listing to Apify's dataset. Download as JSON, CSV, or Excel from the Console, stream via the API, or push to Make, Zapier, Airbyte, or Keboola.
Is it legal to scrape zhihu.com? Web scraping of publicly available data is generally legal. This actor only accesses publicly visible information. Always check zhihu.com's terms of service for your specific use case.
How much does it cost? Pay-per-event pricing — you only pay for listings extracted. Apify's free $5 credit is enough to run thousands of results before you pay anything.
How does incremental mode work? Each listing gets a content hash. On subsequent runs, only new or changed listings are emitted — saving time, compute, and storage. Expired listings can be tracked separately.
Do I need an API key or credentials? No. Just sign up for Apify, paste your input, and click Start. No credit card required.
Browse all Black Falcon Data actors →
New to Apify? Create a free account with $5 credit — no credit card required.
- Sign up — $5 platform credit included
- Open Zhihu Scraper and configure your input
- Click Start — export results as JSON, CSV, or Excel
Need more later? See Apify pricing.
Black Falcon Data builds production-grade web scrapers for job boards and marketplace data. Browse our full actor catalog at www.blackfalcondata.com.
Last updated: 2026 07