Necesito extraer mensajes de los archivos .po. ¿Hay un módulo de python para hacer eso? Escribo un analizador sintáctico, pero depende de la plataforma (como \ r \ n, \ n), así que tal vez haya alguna manera normal de hacerlo.analizando archivos gettext .po con python
Respuesta
Babel incluye un analizador de archivos .po escrito en Python:
El módulo incorporado gettext sólo funciona con archivos .mo binarios.
Uso módulo de gettext orden interna: http://docs.python.org/library/gettext.html
Apareció por mí como el primer resultado de búsqueda en Google después de proporcionar python gettext
. Si te preguntaste si esto es lo que buscaste, entonces sí, así es.
En la mayoría de los casos, no necesita analizar los archivos .po
usted mismo. Los desarrolladores dan a los traductores un archivo de plantilla .pot
, lo renombran a xx_XX.po
y traducen las cadenas. A continuación, como desarrollador sólo tiene que "compilar" a .mo
archivos usando gettext
herramientas de GNU (o su aplicación Python, pygettext
)
Pero, si quieres/necesidad de analizar archivos de la po ti mismo, en lugar de compilar ellos, Le sugiero encarecidamente que use polib
, una conocida biblioteca de python para manejar los archivos po
. Es utilizado por varios proyectos a gran escala, como Mercurial y de Ubuntu motor de traducción Launchpad:
paquete PyPi casa: http://pypi.python.org/pypi/polib/
Código repositorio: https://bitbucket.org/izi/polib/wiki/Home
Documentación: http://polib.readthedocs.org
El módulo de importación es un archivo único, con licencia MIT, por lo que puede incorporarlo fácilmente en su código de esta manera:
import polib
po = polib.pofile('path/to/catalog.po')
for entry in po:
print entry.msgid, entry.msgstr
No puede ser más fácil que eso;)
@saeedgnu: Tal vez usted podría ayudar a mejorarlo? 'polib' es la biblioteca más utilizada para manipular archivos po, y se mantiene de forma activa, por lo que cualquier mejora beneficiará a un * lote * de software – MestreLion
Creo que fue así, el programa que lo usa puede agregar algunas entradas después cargando archivo po (o creando un nuevo objeto pofile), todo está en la memoria – saeedgnu
- 1. Archivos Gettext .po bajo el control de versión
- 2. ¿Hay una biblioteca Java para analizar los archivos PO gettext?
- 3. Combinar 2 archivos GetText
- 4. Gettext: Cómo actualizar los archivos po y pot después de que se modifica la fuente
- 5. Cómo convertir archivos .po de GNU Gettext a archivos .ts de Qt?
- 6. Analizando archivos mbox en Python
- 7. traduzco archivos .js usando gettext
- 8. ¿Traducir automáticamente archivos .po?
- 9. Cómo convertir el archivo gettext .mo al archivo .po
- 10. Servicio de traducción de Google para GNU gettext PO archivos que admiten plurales de estilo ngettext
- 11. Analizando SQL con Python
- 12. ¿Cómo usar los archivos po/pot con php?
- 13. Detectando errores en archivos .po
- 14. Analizando archivos pseudo-xml grandes en python
- 15. Cómo crear archivos .po usando xgettext en Windows?
- 16. ¿Puedo actualizar automáticamente los archivos msg en los archivos .po de gettext para cambios de texto triviales?
- 17. Cómo trabajar eficientemente con los archivos PO de gettext al realizar pequeñas ediciones en valores de texto grandes
- 18. Uso de Babel: cómo proteger los comentarios del traductor (y las traducciones antiguas) en los archivos PO gettext de GNU?
- 19. anula los archivos gettext .mo
- 20. CakePHP 2.1 archivos .po/traducción no funciona
- 21. gettext: extrae cadenas de dgettext() a archivos domain.po
- 22. PHP Gettext - Sin traducción
- 23. Analizando el correo electrónico con Python
- 24. Analizando RSS con Elementtree en Python
- 25. Analizando 'cadena de tiempo' con Python?
- 26. XML analizando con lxml y Python
- 27. HTML analizando con BeautifulSoup 4 y Python
- 28. Analizando puppet-api yaml con python
- 29. analizando .xsd en python
- 30. agregar múltiples archivos po en uno, el valor predeterminado es .po
'gettext' es impresionante, pero sólo funciona con archivos compilados' mo', no sin formato de texto 'queridos po' – MestreLion