Como csv.reader()
¿hay alguna otra función que pueda leer los archivos .rtf
, .txt
, .doc
en Python?Lector de documentos, rtf y txt en python
Respuesta
se puede leer un archivo de texto con
txt = open("file.txt").read()
Trate PyRTF para archivos RTF. Creo que leer archivos MS Word .doc es bastante improbable a menos que esté en Windows y puede usar algunas de las interfaces MS nativas para leer esos archivos. This article afirma que muestra cómo escribir scripts que interactúan con Word.
csv
es un formato específico, por lo que necesita un "analizador" para leerlo. Esto es lo que proporciona el módulo csv como lo mencionó. Los archivos de texto (generalmente con el sufijo .txt
) no tienen ningún "formato" fijo, por lo que puede leerlos después de open
ing them (la respuesta de Jesse proporciona los detalles). Los archivos CSV son comúnmente archivos de texto, por lo que su distinción no es muy precisa.
En cuanto a RTF, hay un montón de ellos. Ver this answer para más detalles. La cosa PyRTF que Jesse mencionó parece ser la más popular.
Los archivos de documentos de Microsoft Word (generalmente con el sufijo .doc
) son otra bestia ya que el formato es de propiedad. No tengo mucha experiencia con los convertidores de Python, pero hay algunos de línea de comandos (como wvHTML) que hacen un trabajo decente. This question analiza bastantes. También existe la opción de que MS-Word lo haga por ti. una interfaz COM como Jesse ha mencionado.
He tenido un verdadero dolor de cabeza tratando de hacer esto simple para los documentos de Word y escritor.
Hay una solución simple: llame a openoffice en la línea de comandos para convertir su documento de destino a texto, luego cargue el texto en Python.
Otras herramientas de conversión que probé produjeron resultados no confiables, mientras que otras bibliotecas de Python oOo eran demasiado complejas.
Si lo que desea es conseguir en el texto para que pueda procesar, utilizar esto en la línea de comandos de Linux:
soffice --headless --convert-to txt:Text /path_to/document_to_convert.doc
(llamaremos a partir de Python usando subproceso si desea automatizarlo).
Creará un archivo de texto que puede cargar fácilmente en python.
(Credit)
import win32com.client
if tmpFile.endswith('.xml') or tmpFile.endswith('.doc') or tmpFile.endswith('.docx'):
app = win32com.client.Dispatch("Word.Application")
app.Visible = False
app.Documents.Open(tmpFile)
doc = app.ActiveDocument
docText = doc.Content.Text
print(docText)
doc.Close()
app.Quit()
No use '|'. Hay un 'o' para eso. – FunkySayu
Hay un módulo de pitón llamada '' docx que se puede utilizar para leer .docx archivos. Aunque no podrás leer .doc porque está casi obsoleto hoy en día.
from docx import Document
doc = Document(filepath)
# Reading Data
data = doc.paragraphs
tables = doc.tables
Se puede encontrar Here en PyPI.
- 1. Análisis de documentos RTF con Java/JavaCC
- 2. lector CSV de Python y la iteración
- 3. Comentando documentos PDF de LaTeX con lector de PDF
- 4. Lector de archivos de forma en Python?
- 5. Lea un archivo .txt dentro del directorio de documentos
- 6. Scripts a documentos (funcionalidad de publicación de Matlab en python)
- 7. jqGrid y lector JSON
- 8. Lector Python UTF-16 CSV
- 9. HTML o RTF?
- 10. Indicando a Python que guarde un archivo .txt en un directorio determinado en Windows y Mac
- 11. Generación de documentos HTML en python
- 12. Extracción de múltiples documentos MongoDB en Python
- 13. ¿Cómo guardo un NSString como archivo .txt en el directorio de documentos locales de mi aplicación?
- 14. Python, añadir elementos de archivo txt en una lista
- 15. Usar tablas en RTF
- 16. encontrar y eliminar archivos .txt en bash
- 17. Análisis del archivo txt CSV/tab-delimited con Python
- 18. carga RTF o archivo de texto en UITextView iPhone SDK
- 19. Leer el archivo txt con multi-threaded en python
- 20. RTF Separador de línea
- 21. Comparando dos archivos .txt usando difflib en Python
- 22. Escribiendo en un archivo .txt (UTF-8), python
- 23. Adjuntar un archivo txt en
- 24. Texto RTF Unicode en RichEdit
- 25. (cadena) lector [0] vs Convert.ToString (lector [0])
- 26. extensión .txt en JFileChooser
- 27. lector de huellas dactilares o lector de pulgar
- 28. Documentos y ejemplos de PythonMagick
- 29. subscribiendo una línea específica del lector csv de python?
- 30. jQuery RTF Editor
relacionado: [extraer texto de archivos de MS Word en python] (http://stackoverflow.com/q/125222/4279) – jfs