He encontrado una API que puede listar todos los temas de una materia específica (cuyo slug es “mlt-kb”) dentro de un rango de fechas determinado. Aquí está el endpoint:
https://{default_host}/search.json?q=%23courses%3Amlt-kb%20after%3A2024-09-24%20before%3A2024-12-29
Pero esta URL no lista todos los temas. Solo lista los primeros 50 temas. Debe haber algún otro parámetro como offset o page … pero no entiendo cómo añadirlos a esta URL . ¿Alguien puede averiguarlo?
¡Gracias de antemano!
thoka
(Thomas Kalka)
23 Enero, 2025 08:44
2
Como siempre: Si esto es posible usando la interfaz de usuario, prueba Reverse engineer the Discourse API
2 Me gusta
nat
(Natalie T)
23 Enero, 2025 08:48
3
Puedes usar esto: https://docs.discourse.org/#tag/Search/operation/search (¡desplázate hacia abajo!)
Verás que además de ?q, también tenemos ?page, así que…
https://{default_host}/search.json?q=%23courses%3Amlt-kb%20after%3A2024-09-24%20before%3A2024-12-29&page=1
2 Me gusta
pfaffman
(Jay Pfaffman)
23 Enero, 2025 15:31
4
1 me gusta
Canapin
(Coin-coin le Canapin)
23 Enero, 2025 16:37
5
Hay un ejemplo de script que recorre los resultados de la página aquí:
You don’t need an API key to do searches.
I’m not sure having an API key could help you resolve your issue more easily.
Here’s an example Python script that loops my posts (1 post every 3 sec) on meta and returns those having the substring upload:// in the raw content:
import requests
import time
def fetch_posts(page):
url = f"https://meta.discourse.org/search.json?q=%40cocoquark&page={page}"
response = requests.get(url)
return response.json()
def fetch_post_content(pos…
Pero como dijo Jay, dependiendo de tu objetivo, usar el explorador de datos podría ser una solución mucho mejor si eres administrador.