API Zhihu Ricerca
Stato di salute dell'API
- Operatività nelle ultime 24 ore
- 99%
- Tempo medio nelle ultime 24 ore
- 14.83 s
- Buono / normale
- Disponibile
- Limitato
- Quasi del tutto inattivo
Ultime 24 ore
Ultimi 30 giorni
Scopri cosa scrivono gli utenti di Zhihu su un argomento, fino a 100 risultati per chiamata. I risultati includono risposte, articoli e video con upvote, commenti, preferiti e credenziali dell'autore. Restringi con content_type e ordina con sort per pertinenza, più upvote o più recenti. type indica il tipo di ogni riga.
Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su zhihu e action impostato su search. Prezzo $0.56 per 1.000 richieste ($0.000556 per chiamata). Le chiamate non riuscite e i risultati vuoti non vengono addebitati. Sincrona. Per i job più lenti, aggiungi "mode": "async" al corpo della richiesta, recupera il job_id ed esegui il polling.
La funzionalità Zhihu Search trova risposte, articoli e video su Zhihu in base a keyword e restituisce per ogni elemento tipo, titolo, testo, numero di voti positivi, commenti e preferiti, data di pubblicazione e nickname, bio, numero di follower ed etichetta di verifica dell'autore. Usala per vedere cosa dicono gli utenti di Zhihu su una domanda e quali opinioni hanno peso: ricerca sugli utenti, studi sulla reputazione di un prodotto, pianificazione dei contenuti e individuazione di esperti di settore.
Mantieni solo risposte, articoli o video con content_type e ordina i risultati con sort (complessivo, più votati o più recenti). type indica se ogni riga è una risposta, un articolo o un video, che usano formati di link diversi, e author_verification_label descrive le credenziali verificate dell'autore, utili per selezionare le risposte degli esperti.
Prompt per l'AI
#Aiutami a scrivere uno script di raccolta dei dati con l'endpoint Zhihu Ricerca di EveryInfra (zhihu/search).
Come funziona l'endpoint:
- Richiesta: POST https://api.everyinfra.com/api/v1/social con l'header Authorization: Bearer <chiave API>. Leggi la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY e non scriverla mai direttamente nel codice.
- Nel corpo della richiesta imposta platform su zhihu e action su search, e inserisci i parametri in params.
- Parametri obbligatori:
- keyword: Il termine di ricerca dei contenuti per l'azione search di Zhihu. Non passare a questo parametro URL di contenuti, handle di autori o link a profili.
- Parametri facoltativi:
- content_type: Filtra il tipo di contenuto per l'azione search. I valori consentiti sono all (predefinito), answer, article e video. Questo parametro restringe i contenuti corrispondenti e non cambia lo schema della risposta. (valori consentiti: all / answer / article / video)
- sort: Ordina i risultati della ricerca. I valori consentiti sono general (predefinito), upvote_count_descending per i più votati e time_descending per i più recenti per data di pubblicazione. (valori consentiti: general / time_descending / upvote_count_descending)
- limit: Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 100. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. (predefinito: 20)
- Restituisce un elenco di record. Campi principali di ogni record: id, type, url, title, text, like_count, comment_count, collect_count, posted_at, cover_image_url (URL dell'immagine di copertina), author_id, author_name; 18 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=zhihu.
- Esempio di corpo della richiesta:
{
"platform": "zhihu",
"action": "search",
"params": {
"keyword": "如何学习摄影"
}
}
- Prezzo: $0.56 per 1.000 richieste; le richieste non riuscite e i risultati vuoti non vengono addebitati.
- Per decine o centinaia di target, aggiungi "mode": "async" al corpo: ricevi subito un job_id ed esegui il polling su GET https://api.everyinfra.com/api/v1/jobs/{job_id} per ottenere il risultato.
- In caso di 422, correggi la richiesta usando i nomi dei parametri e i valori consentiti suggeriti nell'errore; in caso di 429 o 503, attendi il tempo indicato da Retry-After e riprova.
Prima di scrivere il codice, chiedimi quali target mi servono, quanti, quali campi e quale formato di output voglio; poi conferma con me il piano e il costo indicativo.Parametri della richiesta
#| Nome | Posizione | Tipo | Obbligatorio | Predefinito | Descrizione |
|---|---|---|---|---|---|
Authorization | header | string | Sì | - | Bearer seguito dalla tua chiave API. Creala nella console; non inserirla mai in un URL o in un repository di codice. |
platform | body | string | Sì | zhihu | Identificativo della piattaforma, valore fisso. |
action | body | string | Sì | search | Identificativo della funzionalità, valore fisso. |
keyword | body.params | string | Sì | - | Il termine di ricerca dei contenuti per l'azione search di Zhihu. Non passare a questo parametro URL di contenuti, handle di autori o link a profili. |
content_type | body.params | string (enum) | No | - | Filtra il tipo di contenuto per l'azione search. I valori consentiti sono all (predefinito), answer, article e video. Questo parametro restringe i contenuti corrispondenti e non cambia lo schema della risposta.Valori consentitiallanswerarticlevideo |
sort | body.params | string (enum) | No | - | Ordina i risultati della ricerca. I valori consentiti sono general (predefinito), upvote_count_descending per i più votati e time_descending per i più recenti per data di pubblicazione.Valori consentitigeneraltime_descendingupvote_count_descending |
limit | body.params | integer (1–100) | No | 20 | Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 100. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. I valori più alti restituiscono 422 prima di qualsiasi addebito. |
Esempi di codice
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "zhihu",
"action": "search",
"params": {
"keyword": "如何学习摄影"
}
}'Definizione OpenAPI (JSON)Gli esempi leggono la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY; il codice copiato non contiene mai la tua chiave.
Esempio di risposta
#{ "id": "req_…", "platform": "zhihu", "action": "search", "results": [ { "id": "•••", "type": "answer", "url": "https://www.zhihu.com/question/1920106849895679845/answer/2031448129422218730", "title": "新手小白如何系统的学习摄影?", "text": "也最有效。至于课程,先学《摄影基础》,再补《大学摄影基础》或《新闻摄影》,边学边拍,别把自己学成一个只会收藏课程的摄影旁观者", "like_count": 208, "comment_count": 12, "collect_count": 599, "posted_at": "2026-04-25T11:02:56+00:00", "cover_image_url": "https://picx.zhimg.com/80/v2-c4ec584ba597667997b8c2cde7c6616d_qhd.jpg?source=4e949a73", "platform": "zhihu", "author_id": "•••", "author_name": "•••", "author_url": "https://www.zhihu.com/•••", "author_avatar_url": "https://picx.zhimg.com/•••", "author_bio": "•••", "author_follower_count": 1703, "author_verified": true, "author_verification_label": "视觉中国500px总经理、国家地理摄影大赛评委" }, { "id": "•••", "type": "answer", "url": "https://www.zhihu.com/question/36095338/answer/1982462290939880115", "title": "新手如何系统性地学习摄影?", "text": "除非你干婚庆,爱好者不需要“系统性”学习摄影。 第二,提升摄影水平的最好的方式就是去拍那些你能在社交媒体(微信朋友圈/微博/小红书)获得夸奖的图", "like_count": 49, "comment_count": 16, "collect_count": 35, "posted_at": "2025-12-11T06:50:42+00:00", "platform": "zhihu", "author_id": "•••", "author_name": "•••", "author_url": "https://www.zhihu.com/•••", "author_avatar_url": "https://picx.zhimg.com/•••", "author_bio": "•••", "author_follower_count": 259, "author_verified": false, "author_verification_label": "" } ], "count": 20, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Campi della risposta
#I dati di business si trovano in results. La tabella elenca i campi che un record può contenere; i valori che la piattaforma non mostra non vengono mai inventati.
| Campo | Significato |
|---|---|
id | ID univoco del record sulla piattaforma. È univoco solo all'interno di una piattaforma; gli ID possono ripetersi tra piattaforme diverse. |
type | Tipo di record; i valori dipendono dalla funzionalità (ad esempio video / image / text). |
url | Link al record sulla piattaforma. |
title | Titolo. null quando la piattaforma non prevede titoli (ad esempio post di solo testo). |
text | Testo del contenuto senza HTML, restituito per intero e mai troncato (su alcune piattaforme i risultati degli elenchi contengono solo un estratto; lo indicano le note sui campi della piattaforma). |
like_count | Like. null significa che la piattaforma o questa funzionalità non li rende noti; non equivale a 0. |
comment_count | Commenti. null significa non resi noti, non 0. |
collect_count | Salvataggi o preferiti. null significa non resi noti, non 0. |
posted_at | Data e ora di pubblicazione in formato ISO 8601, UTC (ad esempio 2026-08-07T12:34:56+00:00). Le stringhe non standard della piattaforma vengono passate così come sono, quindi esegui il parsing in modo difensivo. null significa che la piattaforma non le rende note. |
cover_image_url | URL dell'immagine di copertina. |
platform | Identificativo della piattaforma di origine, uguale a platform nella richiesta (ad esempio xiaohongshu, tiktok). |
author_id | ID univoco dell'autore sulla piattaforma. |
author_name | Nome visualizzato dell'autore. |
author_url | Link al profilo dell'autore sulla piattaforma. |
author_avatar_url | URL dell'avatar dell'autore; nei risultati dei commenti, l'avatar di chi ha commentato. |
author_bio | Bio dell'autore così come è scritta su Zhihu. |
author_follower_count | Numero di follower dell'autore. null significa non reso noto. |
author_verified | Indica se l'autore è verificato. |
author_verification_label | Descrizione della verifica dell'autore, come una professione o un'istituzione. |
FAQ
#Come ottengo solo le risposte più votate?
#Imposta content_type su answer per avere solo risposte e sort su upvote_count_descending per ordinarle per voti positivi; like_count in ogni riga è il numero di voti positivi. Leggilo insieme a comment_count per individuare le risposte che hanno acceso il dibattito.
keyword può essere il link a una domanda?
#No. keyword è un termine di ricerca, non il link a un contenuto, l'handle di un autore o il link a un profilo. Se hai già il link a una risposta, un articolo o un video, leggilo con la funzionalità Zhihu Content detail, che non accetta pagine di domande.
Come trovo gli autori le cui opinioni hanno peso?
#Controlla author_verified e le credenziali in author_verification_label, poi valuta author_follower_count e i voti positivi alle loro risposte. Gli autori verificati nell'ambito dell'argomento le cui risposte ricevono molti voti positivi sono quelli da seguire.
Errori e addebiti
#- 401
- Chiave mancante o non valida.
- 402
- Saldo insufficiente. Effettua prima una ricarica.
- 422
- Nome o valore del parametro non valido. Correggilo seguendo i suggerimenti dell'errore. Nessun addebito.
- 429
- Raggiunto il limite di richieste al minuto. Attendi il tempo indicato da Retry-After, poi riprova.
- 503
- Impossibile completare. L'importo trattenuto torna sul tuo saldo. Se l'esito è incerto, verificalo prima di riprovare.
- Risposta 200 vuota
- Nessun dato. Nessun addebito.
Riferimenti ufficiali
#Usati solo per verificare oggetti e terminologia. Non implicano alcuna autorizzazione o approvazione di EveryInfra da parte della piattaforma.
- Zhihu: diritti e regole d'uso per risposte e articoli ↗
L'accordo di Zhihu distingue i contenuti originali degli utenti come risposte e articoli, e richiede un'autorizzazione separata dell'autore per ripubblicarli fuori dal sito; limita inoltre la raccolta automatizzata e l'uso dei contenuti. Leggere i contenuti tramite questa API non equivale a ricevere un permesso della piattaforma o diritti d'uso sui contenuti.
Verificato il 2026-09-04