[pyar] Identificar el caracter que se usa en un texto abierto como bytes

Santiago Torres Batán santi73 en gmail.com
Mar Dic 25 22:19:34 -03 2018


Hola,

> > Buenas, tenés para compartir un pdf que falla y el texto convertido?
> > Normalmente pdftotext se encarga de remover los guiones (hypens).
> > Supongo que ya lo consideraste pero hay algún motivo por el cual abris
> > el archivo como binario ('rb') y no con un encoding?
>
> Ahí vi que sacándoles la opción -layout lo hacía, pero eso me genera
> otras cosas. Igual, prefiero esta opción que me sugeriste, aunque aún no
> entiendo por qué no los detecta con el txt nuevo
>

Lo que falla es que la línea no termina con el guión, sino con un '\n'
Esto lo podes ver rápido haciendo lo siguiente:

libro = open("01-sociologia-introduccion.txt", "rb")
lineas = list(libro.readlines())
for linea in lineas:
        print(linea)

También te das cuenta que es caracter utilizado es el guión '-', nada raro.

Ahora bien, si sacás ese final de línea lo podés reemplazar o no utilices
el $ en la regexp.

libro = open("01-sociologia-introduccion.txt", "rb")
lineas = list(libro.readlines())
#libro2 = open('01-sociologia-introduccion_limpio.txt','a')

for linea in lineas:
        # hace el decode a utf-8 y saca el final de linea
        linea = linea.decode('utf-8').rstrip()
        # imprime las lineas que terminan con -
        if linea.endswith('-'):
            print(linea)  # imprime linea normal
            print(linea[:-1]) # imprime linea sacandole en ultimo caracter
            print()

Espero que se entienda.
Saludos
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20181225/8225bbf4/attachment.html>


Más información sobre la lista de distribución pyar