Tools/es

From Kiwix
< Tools
Revision as of 23:07, 2 January 2014 by Kelson (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


This tools are deprecated. Although they may work under certain conditions, we don't provide support for them.

Las herramientas Kiwix son un conjunto de secuencias de comandos (sobre todo en Perl), que tiene como objetivo ayudar en la creación de contenidos utilizables por el software Kiwix.

Introducción

Kiwix está diseñado principalmente como una herramienta para publicar Wikipedia, pero está hecho como para que pudiera hacer más cosas como:

El corazón de Kiwix, en escencia es el motor de renderizado Gecko HTML, el objetivo de las herramientas Kiwix es:

  1. Inicialmente, generar un archivo archivo HTML estático coherente soportando los recursos necesarios: hojas de estilo, scripts de javascript, imágenes, etc.
  2. Posteriormente, a través de estos archivos estáticos, generar un archivo ZIM.

Almacenamiento

En nuestra jerga, tal contenido multimedia integrado es llamado dump o corpus. Estos dump pueden adoptar diferentes formas: para Kiwix v0.5, era una simple lista utilizada por Moulinwiki más un conjunto de archivos combinados comprimidos con bzip2, todo esto se indexada en una base de datos SQLite.

Hoy en día, el formato ZIM base de Kiwix contempla: formato todo en uno (todo en un solo archivo), que permite tanto tener un acceso rápido, de alta compresión y configurable.

ZIM es un formato creado por el proyecto que openZIM, el cual Kiwix es iniciador junto con otros. ZIM se ha basado en un formato más antiguo: ZENO. Zenón fue creado por la casa editorial de Berlín Directmedia y sirvió para publicar la enciclopedia en CD-ROM en lengua alemana. Hoy en día, el formato se encuentra abandonado, pero queríamos continuar con su desarrollo. El futuro dirá si esta iniciativa será un éxito, pero el objetivo es hacer una norma y por lo tanto simplificar el problema para cada uno de los vertederos de almacenamiento. Es en cualquier caso, ya la mejor solución libre.

Generación

El asunto referente al método para generar un dumps no es una simple pregunta. Por varias razones, Kiwix se ha centrado hasta ahora en la manera de generar dumps que ofrece en una selección, incluso si la publicación de copias completas de la Wikipedia es claramente un objetivo. Las herramientas Kiwix están diseñados para ayudar en la selección, lo que ayuda a replicar el contenido del sitio en línea en un espejo y luego la descarga espejo.

Pero este no es el único método para generar un volcado o dump: en teoría, puede hacerlo de diferentes maneras. He aquí una pequeña lista de diferentes maneras para hacerlo:

  • Si deseas generar un dump completo, puede:
    • Consegir un dump HTML del administrador de la wiki. La Fundación Wikimedia proporciona aquí, por ejemplo.
    • Puede también optar por montar un espejo de la wiki, cargar los datos (el texto de la wiki entre otras cosas) en la base de datos y luego generar un dump por ti mismo. Puedes encontrar estos datos, para la Fundación Wikimedia aquí. En el caso de una selección, puede descargarlo de forma dinámica en el sitio (ya que, una wiki es de código abierto).
    • Si usted quiere generar directamente (mediante la recuperación de las páginas HTML) el dump a utilizar desde el sitio con un software de tipo más limpio.
  • Si quieres un dump parcial, se debe hacer una selección de artículos, entonces el problema es análogo a un dump completo.

Las limitaciones son bastante numerosas, sin embargo, aquí están las que son generalmente las que hay que tener en cuenta:

  • Recursos materiales del servidor.
  • Su recurso materiale propio.
  • El espacio de almacenamiento que tiene para el resultado final
  • ¿Cómo hacer la selección si es necesario.

Inventario

Aquí está una lista parcial de las secuencias de comandos disponibles (muchos de los cuales son específicos de Mediawiki):

  • backupMediawikiInstall.pl permite hacer un tgz de un instalación completa de Mediawiki (código + recursos + bases de datos).
  • buildHistoryFile.pl permite, a partir de una lista de artículos de una instanciapermet à partir d'une liste d'articles et d'une instance en línea de Mediawiki para obtener la lista completa de hitórico de cambios de cada página.
  • buildContributorsHtmlPages.pl permite a partir de una plantilla y de una lista de autores, construir un conjunto de páginas HTML que contienen todos los autores de la lista.
  • checkMediawikiPageCompleteness.pl comprueba si un procedimiento de páginas en línea Mediawiki están completos, es decir, no tienen dependencias (plantilla o archivos multimedia) que falten.
  • checkPageExistence.pl verifica la existencia de una lista y una instancia de páginas Mediawiki en línea. Esto puede ser útil, por ejemplo, para saber qué páginas se han replicado.
  • checkRedirects.pl comprueba si no hay páginas que enlazan con redirecciones vacías. También agregan la página de verificación de redirecciones apuntando a cada una.
  • installMediawiki.pl carga una instancia de Mediawiki y su código sin intervención humana. Esto simula el proceso que hace la instalación manual.
  • listAllPages.pl lista de todas las páginas de una instancia de Mediawiki en línea.
  • listRedirects.pl lista de redirecciones en una instancia de Mediawiki en línea.
  • mirrorMediawikiCode.pl para descargar exactamente la misma versión utilizada por un sitio en línea MediaWiki esto es válido para el código de Mediawiki y de extensiones de código.
  • mirrorMediawikiInterwikis.pl permite la instalación de una versión local de Mediawiki exactamente el mismo que para la versión de MediaWiki interwiki ya en línea.
  • mirrorMediawikiPages.pl para copiar todas las páginas y sus dependencias (plantilla y los recursos multimedia) en medio en línea Mediawiki.
  • modifyMediawikiEntry.pl eliminar, vaciar, hacer una lista de páginas de sustitución a presentar de una Mediawiki en línea.
  • dumpHtml.pl permisos de una instancia local de MediaWiki para hacer todas las páginas estáticas es decir, crear un directorio con todo el código HTML se necesite.

Generar un archivo ZIM de la A a la Z

Existen múltiples maneras de utilizar estas herramientas y es imposible mencionarlas a todas. Sin embargo, es útil presentar todos los pasos necesarios para crear un archivo ZIM. Las herramientas presentadas aquí no son perfectas, si tiene problemas durante una parte del proceso, por favor, póngase en contacto con los desarrolladores en la siguiente dirección electrónica: kiwix-developer@lists.sourceforge.net

Paso 1: Elige la fuente

Si ya tienes tus archivos de HTML estático para lo que sigue es inútil y debe ir directamente al Paso 6.

De lo contrario, debes elegir un sitio web para copiar el contenido. Cuando se hace esta elección, verifique bien si el sitio funciona con Mediawiki, de lo contrario que las herramientas kiwix sólo te ayudan en una parte del proceso: desde el paso 6.

Paso 2: Crear una instancia "espejo" de un sitio en línea

Puedes instalar MediaWiki "normalmente" a partir de un archivo o desde el SVN. Pero sobre todo tratamos de tener algo lo más parecido posible a la versión que está en línea y se quiere reproducir. Por lo tanto al tener una versión precisa de Mediawiki con algunas extensiones específicas. Para ello existe mirrorMediawikiCode.pl. Es una solución muy imperfecta, sabiendo que no es fácil saber con exactitud los detalles de una instalación de Mediawiki, pero para Wikipedia, por ejemplo, este script te ayudará fácilmente para obtener una versión del código y las extensiones Mediawiki similares a la versión original.

Una vez que tu código es Mediawiki Ahora usted puede instalar: lo que significa, básicamente, configurar y crear la base de datos MySQL asociada. El script installMediawiki.pl es adecuado para hacer esto en una sola línea de comandos.

Sin embargo, es imposible saber con exactitud cómo configurar un Mediawiki. Tu todavía puedes inspirarte en la configuración utilizada por el proyecto que se localiza aquí.

Paso 3: Copiar el contenido del original al espejo

Copiar el contenido de un Mediawiki a otro es la parte más difícil. Es difícil, porque no siempre es necesario copiar todos los contenidos y una página Mediawiki para mostrarse correctamente puede depender de muchas otras páginas: una página puede tener muchas dependencias.

En pocas palabras, hay dos tipos de dependencias: los medios de comunicación (sobre todo las imágenes, pero también pueden ser vídeos o cualquier otro tipo de archivo) y otras páginas de texto (por lo general los modelos o plantillas). Antes de comenzar a copiar el contenido de las páginas tienenes que preguntarte si deseas copiar sólo algunos artículos o todos.

Si desea copiar todos los elementos y la Mediawiki que deseas reproducir es una de la Fundación Wikimedia (como Wikipedia, por ejemplo), entonces la manera más fácil es trabajar con vertederos(dumps) XML y SQL... No es fácil pero es el método normal (consulte la ayuda). Un script de perl se escribirá pronto para facilitar esta tarea (siga esto). En todos los casos usted todavía tiene que copiar las imágenes posteriormente (y si lo desea).

Si desea reproducir una selección de artículos, a continuación, mirrorMediawikiCode.pl posee la secuencia de comandos que necesitará. mirrorMediawikiCode.pl para reproducir una lista de artículos con todas las dependencias necesarias para la correcta visualización de elementos.

Paso 4: Prepara a tu manera el contenido

Crear un espejo Mediawiki es reproducir el contenido de la instancia original de Mediawiki en ese espejo. Esto es un método sofisticado y complejo de tener finalmente un contenido estático ... Por lo tanto, debe ofrecer ventajas. La mayor ventaja es que permite cualquier tipo de manipulación para modificar el contenido.

Es la forma fácil de eliminar algunos modelos/plantillas que podrían ser inútiles en el caso de una versión estática sin molestias innecesarias. Es el caso de muchos modelos de metadatos. Para realizar esto, simplemente establece una lista utilizando el script modifyMediawikiEntry.pl (por ejemplo, cuando existen modelos vacíos).

Con el mismo script, también se pueden borrar todas las imágenes que no son libres ... Usted puede obtener la lista de la categoría apropiada con el script listCategoryEntries.pl.

También puede ser deseable añadir los cuadros que faltan. Para obtener una lista, el script listDependences.pl puede ser de gran ayuda ... Entonces el mirrorMediawikiPages.pl tradicional lo hará con las opciones apropiadas.

También puede ser usado cuando se tiene exactamente el mismo que el original para evitar interwikis "libre de basura" sus artículos con referencias a interwiki inexistentes. Para esto, te ayudará el script mirrorMediawikiInterwikis.pl.

No se trata de ejemplos, sobre otras modificaciones, más o menos automática son naturalmente posible.

Paso 5: Crea una versión estática del espejo

La creación de una versión estática de un contenido mediawiki se basa siempre en la extensión dumpHtml. Es una extensión estándar de Mediawiki que se instala automáticamente si se usa el script mirrorMediawikiCode.pl.

Para obtener una versión estática debe utilizar el script dumpHtml.pl y crear una versión estática en el directorio raíz "html" de mediawiki.

Paso 6: Optimiza los archivos HTML y los medios asociados

Se recomienda optimizar el contenido antes de la creación del ZIM, se puede ahorrar al menos un 10% en el tamaño. Para ello existe el script optimizeContents.pl que reduce el tamaño de muchas imágenes sin perder calidad. Para ello, debe instalar antes littleutils.

Paso 7: Crea un archivo ZIM

Para crear un ZIM se realiza utilizando simplemente buildZimFileFromDirectory.pl. Para que esto funcione como zimwriter debe instalarse PostreSQL. buildZimFileFromDirectory.pl es un script que puede hacer un archivo ZIM con todos los HTML, CSS, PNG, ... presentes en un directorio.

Paso 8: Crea un archivo de índice de búsqueda ZIM

Para crear un índice de búsqueda, utilice el índice kiwix binario. Kiwix también puede simplemente crear un índice de cualquier archivo MIZ.