Importa CSV in Discourse

Cosa vorresti che venisse fatto?
Ciao, vorrei importare un CSV in Discourse come ARGOMENTI. Ci sono in totale 6 file CSV, ciascuno contenente circa 4000 righe, ovvero 4000 argomenti. Ogni CSV ha 7 colonne, che ho creato per assegnare loro: Titolo dell’argomento, Categoria dell’argomento, Tag e Contenuto dell’argomento.

Non sono un esperto in materia, quindi sto cercando qualcuno che possa creare uno script che io possa eseguire per importare i dati da solo, se è semplice.

Quando hai bisogno che sia fatto?
Non sono sicuro di quanto tempo richiederà tutto questo, ma dopo aver fatto ricerche sul Forum della Community di Discourse, ho trovato molti argomenti in cui le persone menzionavano che esistono script disponibili su GitHub, che possiamo utilizzare per importare i dati. Quindi, se è così, non credo che ci vorranno più di qualche ora per creare uno script.

Qual è il tuo budget, in dollari USA, che puoi offrire per questo compito?
Poiché siamo un’organizzazione no profit, totalmente senza scopo di lucro, siamo limitati nel nostro budget. Tuttavia, sono felice di pagare per le tue ore di lavoro. Oppure, se sei un’azienda, menzionerò il tuo sito web sul mio sito come creatore, così potrai ricevere credito.

Credo che tu possa utilizzare l’API di Discourse per questo.

Ho fatto lo stesso per circa 20K topic, è possibile farlo in un’ora.

Stavo usando JAVA Test per effettuare la chiamata API, il codice più importante è il seguente:

        CloseableHttpClient client = HttpClients.createDefault();

        HttpPost httpPost = new HttpPost("https://www.ossez.com/posts.json");
        httpPost.setHeader(HttpHeaders.CONTENT_TYPE, "application/json; charset=UTF-8");
        httpPost.setHeader("Api-Key", "XXXXXX");
        httpPost.setHeader("Api-Username", "XXXXXX");

        TopicRequest topicRequest = new TopicRequest();
        topicRequest.setTitle(bbsOssezForumPost.getSubject());
        topicRequest.setRaw(postCtx);
        topicRequest.setCreated_at(new DateTime(bbsOssezForumPost.getDateline() * 1000L).toString() );
        topicRequest.setCategory(30);

        StringEntity postingString = new StringEntity(new Gson().toJson(topicRequest),  StandardCharsets.UTF_8);

        httpPost.setEntity(postingString);

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