MODIFICATION : erreur dans mon message original. Je voulais faire référence au champ « cooked », et non au champ « raw » (CORRIGÉ).
J’ai récemment acquis des données JSON d’un forum Discourse, où les données des messages sont sous forme « cooked ». Je me demandais s’il existait un moyen de reconvertir cela en Markdown ? Je suis nouveau sur Discourse et j’ai cherché, mais je n’ai pas trouvé de moyen de le faire. Étant donné que les données « cooked » semblent être utilisées pour créer le HTML, je suppose qu’une autre solution serait d’utiliser la fonction qui convertit le « cooked » en HTML, puis de convertir le HTML en Markdown.
Je possède déjà les données, je ne peux pas les récupérer à nouveau. Elles provenaient d’un forum qui a été supprimé, j’essaie de nettoyer les données pour qu’elles puissent être restaurées.
Quel est exactement le format des données “brutes” ?
Si par « brut » vous entendez un champ appelé raw, alors vous regardez la source Markdown réelle que nous stockons. Par exemple, ceci est le point de terminaison JSON pour votre dernier message à l’instant.
Le champ raw est le texte réel que vous avez composé dans l’éditeur Markdown, et nous le stockons tel quel, donc il ne peut pas être plus pur que cela.
Au lieu de cela, si vous entendez généralement par « le HTML brut » tel qu’il est extrait sans utiliser de points de terminaison JSON, alors vous pouvez convertir ce HTML en Markdown en externe avec pandoc comme suggéré ci-dessus, ou tout autre logiciel.
Veuillez accepter mes excuses, j’ai fait une erreur dans mon premier message (corrigée depuis). Je voulais faire référence aux données traitées par opposition aux données brutes (c’est une longue journée…).
Sous quelle forme se présentent les données traitées et y a-t-il un moyen de les convertir en Markdown ou en HTML ? Merci.
Ah, cela a plus de sens. Le champ cooked est le HTML rendu à partir de Markdown.
Vous pouvez simplement exécuter cela via pandoc pour obtenir du Markdown ; vous n’obtiendrez pas une fidélité complète par rapport au raw correspondant car il existe des balises Markdown non standard comme [quote] qui sont rendues à certains modèles HTML, mais si vous avez simplement besoin du contenu en Markdown, pandoc devrait suffire.
#<Post:0x00007fbb78416f50
id: 2203,
user_id: -4,
topic_id: 590,
post_number: 6,
raw: "\"@merefield, it looks like @eloy has mentioned that their favourite colour is red!\"",
cooked:
"<p><a class=\"mention\" href=\"/u/merefield\">@merefield</a>, it looks like <a class=\"mention\" href=\"/u/eloy\">@eloy</a> has mentioned that their favourite colour is red!</p>",
created_at: Sun, 18 Aug 2024 11:15:32.487912000 UTC +00:00,
updated_at: Sun, 18 Aug 2024 11:15:32.487912000 UTC +00:00,