Recuperar datos (p. ej. publicaciones de temas) mediante utilidad Go (independiente del SO)

‘discourse-reader’ recupera datos (por ejemplo, sitio, categoría, tema) del foro de Discourse en nombre del usuario. La utilidad se puede encontrar aquí:

discourse-reader                                                                       

Programa:
  Nombre    : discourse-reader
  Versión : v1.0.0 - 2022/11/18
  Propósito : Lector de Discourse
  Información    : Recupera datos (por ejemplo, sitio, categoría, tema) del foro de Discourse.

Uso:
  discourse-reader -forum=cadena -query=cadena -category=entero -topic=entero -pages=entero -output=cadena -userapikey -sleeptime=entero

Ejemplos para consulta general:
  discourse-reader
  discourse-reader -query=community.openstreetmap.org/site.json -output=community.openstreetmap.org.json
  discourse-reader -query=community.openstreetmap.org/site.json -output=community.openstreetmap.org.json -userapikey=bd38603815e3f2562c3eb3988c69eb77
  discourse-reader -query=meta.discourse.org/site.json -output=meta.discourse.org.json
  discourse-reader -query=meta.discourse.org/session/current.json -output=session-current.json

Ejemplos para categoría:
  discourse-reader -forum=community.openstreetmap.org -category=56 -output=category-56.json
  discourse-reader -forum=community.openstreetmap.org -category=56 -output=category-56.json -userapikey=bd38603815e3f2562c3eb3988c69eb77
  discourse-reader -forum=meta.discourse.org -category=67 -pages=99 -sleeptime=6 -output=category-67.json

Ejemplos para tema:
  discourse-reader -forum=community.openstreetmap.org -topic=4120 -output=topic-4120.json
  discourse-reader -forum=community.openstreetmap.org -topic=4120 -pages=99 -sleeptime=6 -output=topic-4120.json
  discourse-reader -forum=community.openstreetmap.org -topic=4120 --output=topic-4120.json -userapikey=bd38603815e3f2562c3eb3988c69eb77
  discourse-reader -forum=meta.discourse.org -topic=112837 -output=topic-112837.json

Opciones:
  -category int
    	recuperar datos (lista de temas) para la categoría con identificador (predeterminado -1)
  -forum string
    	URL del foro de Discourse
  -output string
    	nombre del archivo de salida JSON
  -pages int
    	páginas de datos a recuperar (predeterminado 19)
  -query string
    	consulta de datos general a recuperar (URL completa)
  -sleeptime int
    	tiempo de espera en segundos antes de recuperar la siguiente página (evita la limitación de velocidad del usuario) (predeterminado 2)
  -topic int
    	recuperar datos (lista de publicaciones) para el tema con identificador (predeterminado -1)
  -userapikey string
    	clave API de usuario personal (también se puede establecer como variable de entorno 'USER_API_KEY')

Observaciones:
  - La clave API de usuario se puede establecer como variable de entorno [USER_API_KEY].
  - El proxy de Internet se puede establecer como variable de entorno [HTTPS_PROXY].
  - Ejemplos para Linux:
    export USER_API_KEY=bd38603815e3f2562c3eb3988c69eb77
    export HTTPS_PROXY=http://user:password@194.114.63.23:8080
  - Ejemplos para Windows:
    set USER_API_KEY=bd38603815e3f2562c3eb3988c69eb77
    set HTTPS_PROXY=http://user:password@194.114.63.23:8080

Limitación de velocidad por servicio de foro:
  - Este programa no difiere funcionalmente de un usuario a través de un navegador. Sin embargo, los
    datos se recuperan algo más rápido. Esto puede llevar a rechazos (limitación de velocidad) por parte del
    servicio. Para evitar esto, el programa puede pausar entre la recuperación de páginas. El tiempo de pausa
    se puede especificar con la opción '-sleeptime=entero'.
  - La configuración típica de limitación de velocidad para usuarios es:
    - solicitudes por minuto : 20
    - solicitudes por día    : 2880
1 me gusta