API Douban Argomento del gruppo
Stato di salute dell'API
- Operatività nelle ultime 24 ore
- Normale
- Buono / normale
- Disponibile
- Limitato
- Quasi del tutto inattivo
Ultime 24 ore
Ultimi 30 giorni
Leggi una discussione di un gruppo Douban dal link del topic. Ottieni il post iniziale, nome e link del gruppo, autore, numero di risposte e le risposte. max_replies imposta quante risposte recuperare, da 1 a 100 (default 20). I gruppi chiusi non sono accessibili, e la discussione potrebbe essere incompleta.
Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su douban e action impostato su group_topic. Prezzo $1.39 per 1.000 richieste ($0.001389 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.
Prompt per l'AI
#Aiutami a scrivere uno script di raccolta dei dati con l'endpoint Douban Argomento del gruppo di EveryInfra (douban/group_topic).
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 douban e action su group_topic, e inserisci i parametri in params.
- Parametri obbligatori:
- url: Specifica l'URL del soggetto nel formato /subject/<ID>/ su movie.douban.com, book.douban.com o music.douban.com per le azioni reviews o comments, oppure nel formato www.douban.com/group/topic/<ID>/ per group_topic.
- Parametri facoltativi:
- max_replies: Limita il numero di risposte all'argomento recuperate da group_topic per richiesta; accetta numeri interi da 1 a 100 (predefinito 20).
- limit: Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 50. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. (predefinito: 10)
- Restituisce un elenco di record. Campi principali di ogni record: id, url, title, text, group_id, group_name, group_url, author_name, author_url, reply_count, replies, posted_at.
- Esempio di corpo della richiesta:
{
"platform": "douban",
"action": "group_topic",
"params": {
"url": "https://www.douban.com/group/topic/495209798/"
}
}
- Prezzo: $1.39 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ì | douban | Identificativo della piattaforma, valore fisso. |
action | body | string | Sì | group_topic | Identificativo della funzionalità, valore fisso. |
url | body.params | string | Sì | - | Specifica l'URL del soggetto nel formato /subject/<ID>/ su movie.douban.com, book.douban.com o music.douban.com per le azioni reviews o comments, oppure nel formato www.douban.com/group/topic/<ID>/ per group_topic. Recensioni lunghe, commenti brevi e risposte agli argomenti dei gruppi sono gestiti da endpoint di azione separati. |
max_replies | body.params | integer | No | - | Limita il numero di risposte all'argomento recuperate da group_topic per richiesta; accetta numeri interi da 1 a 100 (predefinito 20). I valori fuori intervallo vengono riportati ai limiti, quelli non interpretabili tornano al valore predefinito, e il numero restituito non garantisce il recupero di tutte le risposte storiche. |
limit | body.params | integer (1–50) | No | 10 | Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 50. 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": "douban",
"action": "group_topic",
"params": {
"url": "https://www.douban.com/group/topic/495209798/"
}
}'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": "douban", "action": "group_topic", "results": [ { "id": "495209798", "url": "https://www.douban.com/group/topic/495209798/", "title": "卸载小红书后一身轻松", "text": "今天把小红书卸载了。心里一下子松快了不少。\n\n一开始只是用它当个工具,搜点学习资料,看看生活技巧相关的内容。然而随手往下滑一滑,就不知不觉陷进乱糟糟的信息流里。\n\n慢慢地,发现被算法裹挟了,情绪拉扯,攀比的声音、无意义的争吵、很远很远的别人的生活,一股脑全推到眼前。明明这些人和事,跟我的日常一点关系都没有,却硬生生耗掉很多精力,心里总是乱糟糟的。自己本来很细腻的感知,都浪费在消化网络里的浮躁和戾气上,忽略了手边真实的日子。\n\n看着这个平台慢慢变味,早期温和松弛的氛围,早已沦为资本的场域。为了上市,扩大用户盘。女性主义已经变成营销噱头,已然变成小红叔了。一…", "group_id": "735707", "group_name": "懒人生活指北", "group_url": "https://www.douban.com/group/735707/", "author_name": "这•••呀", "author_url": "https://www.douban.com/•••", "reply_count": 483, "replies": [ { "id": "•••", "text": "感觉📕还没抖平和,一张嘴就是吵架", "author_name": "苏•••玉", "author_url": "https://www.douban.com/•••", "vote_count": 643, "posted_at": "2026-07-27T18:02:25+08:00" }, { "id": "•••", "text": "可以关了个性化,我每个平台都关,感觉很不错", "author_name": "n•••k", "author_url": "https://www.douban.com/•••", "vote_count": 430, "posted_at": "2026-07-27T18:10:39+08:00" }, { "id": "•••", "text": "我也卸了 弊大于利了 这个设计太强了 忍不住一直刷 一直沉迷于看别人的生活", "author_name": "开•••要", "author_url": "https://www.douban.com/•••", "vote_count": 384, "posted_at": "2026-07-27T18:21:48+08:00" } ], "posted_at": "2026-07-27T17:57:17+08:00", "platform": "douban" } ], "count": 1, "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. |
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). |
group_id | Mantiene il significato attribuito dalla piattaforma |
group_name | Mantiene il significato attribuito dalla piattaforma |
group_url | Mantiene il significato attribuito dalla piattaforma |
author_name | Nome visualizzato dell'autore. |
author_url | Link al profilo dell'autore sulla piattaforma. |
reply_count | Risposte, di solito a un commento. null significa non rese note. |
replies | Mantiene il significato attribuito dalla piattaforma |
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. |
platform | Identificativo della piattaforma di origine, uguale a platform nella richiesta (ad esempio xiaohongshu, tiktok). |
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.
- Douban Groups: leggere le discussioni è diverso dal gestire i membri ↗
L'assistenza di Douban elenca l'iscrizione ai gruppi, la messa in evidenza delle discussioni e la gestione dei membri come funzioni distinte, alcune delle quali richiedono i permessi di responsabile o amministratore del gruppo. Recuperare qui discussioni specifiche e citare la documentazione sulla gestione non concede tali permessi, né fornisce operazioni di iscrizione, pubblicazione o gestione.
Verificato il 2026-09-04