[Python-es] Analizar cadena y extraer valores
Juan BC
jbc.develop en gmail.com
Mar Jun 3 17:08:59 CEST 2014
pdfminner
El día 3 de junio de 2014, 12:07, Manuel A. Estevez Fernandez
<stvzito en gmail.com> escribió:
> Muchas gracias, los voy a revisar.
>
> Saludos.
>
> by:
>
> ISC. Manuel Alejandro Estévez Fernández
>
>
>
> El 3 de junio de 2014, 5:50, Luis Iglesias <luis.iglesias en vigo.org>
> escribió:
>>
>>
>> ----- Mensaje original -----
>> De: "Manuel A. Estevez Fernandez" <stvzito en gmail.com>
>> Para: "La lista de python en castellano" <python-es en python.org>
>> Enviados: Lunes, 2 de Junio 2014 17:50:02
>> Asunto: Re: [Python-es] Analizar cadena y extraer valores
>>
>> Muchas gracias por tu aportación Luis, si me pudieras compartir tu código
>> te lo agradecería mucho. Porque de momento estoy jugando todavía a prueba y
>> error con la interpretación del texto extraído.
>>
>> ------------
>> No sé si la lista admite adjuntos.
>> Envío el módulo principal y un ejemplo de uso. Ten en cuenta que este
>> módulo trabaja con el fichero html que se genera con pdftotext a partir del
>> pdf.
>> Yo lo estoy empleando para leer facturas y generar un json con los datos
>>
>> El código de uso sería algo así:
>>
>> from ocr.utilspdf import PdfTextInfo
>> from extra import debug, fechas
>> import json
>> import os.path
>>
>> hInfo = PdfTextInfo(ficheroHtml)
>> self.json = {}
>> j = self.json
>> j['002.pdf.pagDesde'] = 1
>> j['002.pdf.pagHasta'] = hInfo.totalPaginas
>> j['010.factura'] = hInfo.getTextoEnXY(1, 70.8, 216.352)
>> j['021.fIniFact'] =
>> fechas.YMD(fechas.dd_mm_aa2date(hInfo.getTextoEnXY(1, 70.8, 317.632)))
>> p = hInfo.getNumpag(70.8, 126.416, 'ENDEREZO')
>> j['040.direccion'] = hInfo.getTextoEnRegion(p, (70.8, 134.032,
>> 300, 142.888))
>>
>> La clase PdfTextInfo está definida en el módulo utilspdf que adjunto.
>> El método getTextoEnXY devuelve la palabra que tiene exactamente esas
>> coordenadas en la esquina superior izquierda.
>> El método getTextoEnRegion recoge el texto que se encuentra en las
>> esquinas que se le pasen.
>> Hay algunos métodos que quizá no te hagan falta, como obtener el total de
>> páginas o preguntar en qué página se encuentra tal texto en tal posición.
>>
>> Si tienes alguna pregunta no tendré problema en contestar: por aquí (si la
>> lista está de acuerdo) o por el correo privado.
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
--
Juan B Cabral
Más información sobre la lista de distribución Python-es