Cuando estaba compactando mis correos, para ahorrar espacio en disco
por alguna razón se dejaron de ver los correos, sin embargo al revisar el tamaño del inbox seguía teniendo el mismo tamaño
Investigando un poco, se debe a algún error de Mozilla Thunderbird , en la cual les cambia un estatus:
x-mozilla-status = 0009 u 0008 .
La solución es abrir el archivo Inbox con un editor de texto y cambiar a x-mozilla-status =0001.
Pero la cosa se complica cuando los correos son mayores a 1 GB, en mi caso el archivo pesaba 9GB.
(Las imágenes de arriba son ilustrativas, ya que recree el detalle en un Inbox de poco tamaño)
Por lo que decidí crear un script en Python para que realice el cambio, apoyándonos en la librería
Crear un archivo .py en mi caso: thunderbir_email_fix_verbose_mode.py
import mailbox
print('Jero')
print('Script V 0.8')
print('Versión de Python Requerido : 3.9.4')
print('')
print('Leyendo Archivo Inbox. Asegurese que este en la misma ruta y con el nombre correcto (=Inbox) ')
#Abrimos el inbox pricipal (debe estar en la misma ruta de este script y con el nombre Inbox)
mbox= mailbox.mbox('Inbox')
#Tomamos el proceso y lo bloqueamos
mbox.lock()
print('Corrigiendo estatus de correos...')
for key, msg in mbox.iteritems():
print('Clave Email {:6} "Subject: {}"'.format(key, msg['subject']))
print('Old Flag:',msg.get_flags())
print('Old Estatus:', msg['x-mozilla-status'])
#Marcamos como leido y cambiamos el estatus a no eliminado
msg.add_flag('R')
msg.replace_header('x-mozilla-status','0001')
#Validamos el cambio
mbox[key] = msg
print('Validando Cambio')
print('New Status:', msg['x-mozilla-status'])
print('New Flag:', msg.get_flags())
print('--------------')
print(' ')
print('Ya casi...')
print('Aplicando Cambios, espere...')
mbox.flush()
mbox.close()
print("Fin de procesamiento")
print("Have a Nice Day :)")
------
Para ejecutar el scritpt, es necesario copiar el "Inbox" de thunderbird en la misma ruta del script
Una vez finalizado:
Regresar el Inbox a la carpeta de Thunderbird y eliminar Inbox.msf
NOTA: En todo el proceso debe estar cerrado thunderbird.
Espero les sea de ayuda.
Comentarios
Publicar un comentario