pyPdf es una gran biblioteca para dividir, combinar archivos PDF. Lo estoy usando para dividir documentos pdf en documentos de 1 página. pyPdf es python puro y pasa bastante tiempo en el método _sweepIndirectReferences() del objeto PdfFileWriter al guardar la página extraída. Necesito algo con un mejor rendimiento. He intentado usar multi-threading pero dado que la mayor parte del tiempo lo paso en código python, no hubo ganancia de velocidad debido al GIL (en realidad, se ejecutó más despacio).Biblioteca de divisor de PDF rápido
¿Hay alguna biblioteca escrita en c que proporcione la misma funcionalidad? o alguien tiene una buena idea sobre cómo mejorar el rendimiento (aparte de generar un nuevo proceso para cada archivo pdf que quiero dividir)
Gracias de antemano.
Seguimiento. Los enlaces a un par de soluciones de línea de comandos, que pueden resultar a veces más rápido que pyPDF:
- http://multivalent.sourceforge.net/Tools/pdf/Split.html
- http://www.linuxsolutions.fr/how-to-extract-pages-from-a-pdf/
modifiqué clase pyPDF PDFWriter para realizar un seguimiento de cuánto tiempo se ha gastado en el método _sweepIndirectReferences(). Si ha sido demasiado largo (ahora uso el valor mágico de 3 segundos), entonces vuelvo a usar ghostscript llamándolo desde python.
Gracias por todas sus respuestas. (La referencia xpdf de codelogic es la que me hizo buscar un enfoque diferente)
Necesito desmontar el pdf. Si entiendo correctamente mbtPdfAsm ensambla pdfs. – Nathan
Se puede usar para ensamblar y desmontar pdfs. – codelogic