Comment importer des vidages XML dans votre wiki MediaWiki?

Vous pourriez avoir besoin d'importer des vidages XML dans votre Wiki à un moment ou à un autre
Vous pourriez avoir besoin d'importer des vidages XML dans votre Wiki à un moment ou à un autre.

MediaWiki utilise un format abstrait basé sur XML pour les vidages de contenu. C'est ce que Special:Export génère, et aussi ce qui est utilisé pour les dumps XML de Wikipedia et d'autres sites Wikimedia. Cela peut être importé dans un autre wiki en utilisant MediaWiki via la page Special:Import ou en utilisant mwdumper ou xml2sql.

Vous pourriez avoir besoin d'importer des vidages XML dans votre Wiki à un moment ou à un autre. Voici quelques méthodes couramment utilisées pour importer des vidages XML.

Pas

  1. 1
    Effectuez toutes les configurations nécessaires avant l'importation. Special:import est une fonctionnalité du logiciel mediawiki qui peut être utilisée par Sysops (par défaut) pour importer un petit nombre de pages (c'est-à-dire que tout ce qui est inférieur à 20 Mo devrait être sûr). Essayer d'importer des vidages volumineux de cette manière peut entraîner des délais d'attente ou des échecs de connexion. Il y a quelques paramètres qui peuvent provoquer cela:
    • La limite de téléchargement PHP trouvée dans le fichier de configuration PHP php.ini empêchera le téléchargement de gros fichiers sur le serveur. Modifiez cette ligne pour augmenter cette limite:
      ; Taille maximale autorisée pour les fichiers téléchargés. upload_max_filesize = 20M 
    • Il existe une variable cachée qui limitera la taille du fichier dans le formulaire de saisie. Cela peut être trouvé dans le code source de MediaWiki dans un fichier nommé includes/SpecialImport.php. Ce fichier source doit également être modifié pour augmenter la taille maximale des fichiers téléchargés.
    • <type d'entrée='hidden' name='MAX_FILE_SIZE' value='20000000' /> 
    • Le traitement du fichier importé peut prendre plus de temps que le temps maximum autorisé par php. Ajoutez les lignes suivantes à php.ini pour remédier à cela:
      max_execution_time = 1000; Temps d'exécution maximum de chaque script, en secondes max_input_time = 2000; Temps maximal que chaque script peut passer à analyser les données de la demande default_socket_timeout = 2000; Délai d'expiration par défaut pour les flux basés sur les sockets (secondes) 
    Et aussi ce qui est utilisé pour les dumps XML de Wikipedia
    C'est ce que Special:Export génère, et aussi ce qui est utilisé pour les dumps XML de Wikipedia et d'autres sites Wikimedia.
  2. 2
    Si vous avez un accès shell, essayez d'utiliser importdump.php. Bien que ce soit la méthode la plus recommandée, elle devient lente lors de l'importation d'énormes dumps. Si vous essayez d'importer quelque chose d'aussi volumineux que les dumps Wikipedia, utilisez mwdumper. importDump.php est un script en ligne de commande situé dans le dossier de maintenance de votre installation MediaWiki. Si vous avez un accès shell, vous pouvez utiliser importdump.php avec cette commande:

    php importDump.php <dumpfile>

    • Remplacez <dumpfile> par le nom de votre fichier de vidage. Même si le fichier est compressé avec l'extension de fichier.bz2 ou.gz, il sera décompressé automatiquement.
  3. 3
    Pour les grands ensembles de bases de données, essayez d'utiliser mwdumper. Il s'agit d'une application Java capable de lire, d'écrire et de convertir les dumps XML MediaWiki en dumps SQL (pour une utilisation ultérieure avec mysql ou phpmyadmin) qui peuvent ensuite être importés directement dans la base de données. Il est beaucoup plus rapide que importDump.php, cependant, il importe uniquement les révisions (contenu de la page) et ne met pas à jour les tables de liens internes en conséquence. Cela signifie que les pages de catégorie et de nombreuses pages spéciales afficheront des informations incomplètes ou incorrectes à moins que vous ne mettiez à jour ces tables.
    • Si disponible, remplissez les tables de liens en important des vidages SQL séparés de ces tables à l'aide du client de ligne de commande mysql directement. Pour les wikis Wikimedia (y compris Wikipédia), ceci est fourni avec les dumps XML. Sinon, exécutez reconstructall.php. Notez que cette commande prendra beaucoup de temps car elle doit analyser toutes les pages. Ceci n'est pas recommandé pour les grands ensembles de données.
  4. 4
    Essayez xml2sql. Il s'agit d'un autre convertisseur XML vers SQL similaire à mwdumper mais ce n'est pas un outil officiel et n'est pas maintenu par les développeurs de MediaWiki. Il s'agit d'un programme ANSI C multiplateforme et l'importation via celui-ci peut être rapide, mais ne met pas à jour les données secondaires telles que les tables de liens, vous devez donc exécuter reconstructall.php, ce qui annule cet avantage.
Cela peut être importé dans un autre wiki en utilisant MediaWiki via la page Special:Import ou en utilisant
Cela peut être importé dans un autre wiki en utilisant MediaWiki via la page Special:Import ou en utilisant mwdumper ou xml2sql.

Conseils

  • Pour exécuter importDump.php (ou tout autre outil du répertoire de maintenance), vous devez configurer votre fichier Admin Settings.php. Pour ceux qui utilisent une version MediaWiki supérieure à 1,16, la restriction n'est pas pertinente. N'y faites pas attention.
  • Soyez averti que Xml2sql peut être incompatible avec la dernière version de MediaWiki.

Mises en garde

  • L'exécution de importDump.php peut prendre un certain temps. Pour un grand dump Wikipédia avec des millions de pages, cela peut prendre des jours, même sur un serveur rapide.
    • De même, l'utilisation de Special:Import peut ne pas être recommandée pour les grands ensembles de données.
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail