Scarica tutte le conversazioni in un file e dati strutturati

Questa domanda è simile a questa: Does Discourse support export conversations as an organized bulk of data?

ma stiamo cercando un modo per eseguire NLP su tutte le conversazioni del nostro sito Discourse. Qualcuno del nostro team ha chiesto se fosse possibile farlo agendo a un livello più basso, nel backend, ad esempio esportando il database ma senza i dati delle tabelle, con qualcosa come pg_dump --schema-only. Non ho capito appieno cosa intendesse il mio collega, ma pensavo che forse tu lo sapessi.

Se sei in self-hosting, possono eseguire il comando pg_dump che ritengono utile.

Puoi anche esportare i dati in vari formati con il plugin Data Explorer.

2 Mi Piace

Questo plugin sembra fornire quasi tutto ciò che stiamo cercando! Grazie!

Quindi ho installato il plugin e ho esaminato tutte le query disponibili su (Superseded) What cool data explorer queries have you come up with?, ma non ho trovato nulla che permetta di esportare le conversazioni vere e proprie. Ad esempio, ho richiesto le 100 discussioni più attive. Ricevo voci di database con gli ID delle discussioni (vedi screenshot), ma non le conversazioni. È perché il plugin serve solo a estrarre dati dal database e non recupera le conversazioni stesse? Se è così, esiste un modo per utilizzare le informazioni estratte dal database per recuperare le conversazioni in file JSON, utilizzando gli ID delle discussioni ottenuti dal plugin?

 SELECT * FROM posts where topic_id=425

Questo ti darà i post del primo argomento nella tua query (dato che sto scrivendo da questo telefono).

Ma se ciò che desideri è in formato JSON, potresti fare qualcosa come

  https://meta.discourse.org/t/dump-all-conversations-in-a-file-and-structured-data/202351.json

Non ho capito la tua prima opzione, forse c’è un errore di battitura nel tuo testo? Intendevi dire che ottengo solo il primo post dell’argomento?

Per quanto riguarda la seconda opzione con l’estensione .json, esiste un URL alternativo che utilizza topic_id o qualsiasi altra voce che possa essere utilizzata per ottenere in modo più programmatico la conversazione come JSON senza dover conoscere il titolo dell’argomento?

Hai provato la query SQL? C’è stato un errore? Modifica: Ho controllato. Quella query restituirà tutti i post di un argomento.

Puoi ottenere qualsiasi argomento utilizzando solo l’ID dell’argomento.

https://meta.discourse.org/t/-/202351.json

La query era corretta, ho solo frainteso la tua spiegazione di cosa fornisse effettivamente. Grazie per aver ricontrollato. Queste sono ottime soluzioni.

1 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.