Recupera dati (es. post di topic) tramite utility Go (indipendente dal sistema operativo)

‘discourse-reader’ recupera dati (ad es. sito, categoria, argomento) dal forum Discourse per conto dell’utente. L’utility si trova qui:

discourse-reader                                                                       

Programma:
  Nome    : discourse-reader
  Rilascio : v1.0.0 - 2022/11/18
  Scopo : Lettore Discourse
  Info    : Recupera dati (ad es. sito, categoria, argomento) dal forum Discourse.

Utilizzo:
  discourse-reader -forum=string -query=string -category=int -topic=int -pages=int -output=string -userapikey -sleeptime=int

Esempi per query generale:
  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

Esempi per categoria:
  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

Esempi per argomento:
  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

Opzioni:
  -category int
    	recupera dati (elenco di argomenti) per la categoria con identificatore (predefinito -1)
  -forum string
    	URL del forum Discourse
  -output string
    	nome del file di output JSON
  -pages int
    	pagine di dati da recuperare (predefinito 19)
  -query string
    	query di recupero dati generale (URL completo)
  -sleeptime int
    	tempo di attesa in secondi prima di recuperare la pagina successiva (evita il rate limiting dell'utente) (predefinito 2)
  -topic int
    	recupera dati (elenco di post) per l'argomento con identificatore (predefinito -1)
  -userapikey string
    	chiave API utente personale (può anche essere impostata come variabile d'ambiente 'USER_API_KEY')

Note:
  - La chiave API utente può essere impostata come variabile d'ambiente [USER_API_KEY].
  - Il proxy Internet può essere impostato come variabile d'ambiente [HTTPS_PROXY].
  - Esempi per Linux:
    export USER_API_KEY=bd38603815e3f2562c3eb3988c69eb77
    export HTTPS_PROXY=http://user:password@194.114.63.23:8080
  - Esempi per Windows:
    set USER_API_KEY=bd38603815e3f2562c3eb3988c69eb77
    set HTTPS_PROXY=http://user:password@194.114.63.23:8080

Rate limiting da parte del servizio forum:
  - Questo programma non differisce funzionalmente da un utente tramite browser. Tuttavia, i
    dati vengono recuperati in modo un po' più veloce. Ciò può portare a rifiuti (rate limiting) da parte del
    servizio. Per evitarlo, il programma può mettere in pausa tra il recupero delle pagine. Il tempo di pausa
    può essere specificato con l'opzione '-sleeptime=int'.
  - Impostazioni tipiche di rate limiting per l'utente sono:
    - richieste al minuto : 20
    - richieste al giorno    : 2880
1 Mi Piace