Les livres audio gagnent de plus en plus en popularité par rapport aux livres électroniques traditionnels. Ils sont plus pratiques car vous pouvez les écouter à tout moment et n'importe où.
Vous pouvez convertir un eBook PDF en livre audio avec un simple script Python. En utilisant quelques bibliothèques simples, vous pouvez développer un projet qui lira un PDF et stockera le livre audio en tant que nouveau fichier.
Installation des packages requis
Vous devez installer le PyPDF3, pyttsx3, et pdfplombier forfaits pour commencer. Vous pouvez installer ces packages à l'aide du gestionnaire de packages pip. Assurez-vous d'avoir déjà pip installé sur votre système. Exécutez la commande suivante dans l'invite de commande pour installer les packages :
pépin installer PyPDF3 pyttsx3 pdfplombier
- Vous pouvez utiliser le PyPDF3 bibliothèque pour lire et éditer des fichiers PDF en Python.
- La pyttsx3 bibliothèque fournit la conversion texte-parole.
- pdfplombier est une bibliothèque qui vous permet d'extraire du texte et des tableaux à partir de fichiers PDF.
Le code utilisé dans ce projet est disponible dans un Référentiel GitHub et est libre d'utilisation sous la licence MIT.
Conversion d'un PDF en livre audio à l'aide de Python
Une fois que vous avez installé les packages ci-dessus, vous êtes prêt à les importer dans votre fichier python :
importer PyPDF3
importer pyttsx3
importer pdfplombier
Vous devez fournir le nom et l'emplacement du fichier PDF que vous souhaitez convertir. Par souci de simplicité, vous pouvez utiliser n'importe quel exemple de fichier PDF. Copiez-le dans le même répertoire que votre script et stockez son nom dans une variable; si ça s'appelle Lorem.pdf, par exemple:
fichier = 'Lorem.pdf'
Ensuite, créez un objet fichier pour le fichier PDF et un objet lecteur PDF :
livre = ouvrir (fichier, 'rb')
pdfReader = PyPDF3.PdfFileReader (livre)
Plus tard, vous parcourrez toutes les pages du fichier PDF. Pour trouver le nombre total de pages, utilisez les nombre de pages propriété:
pages = pdfReader.numPages
Vous êtes maintenant prêt à extraire le texte du fichier PDF :
texte final = ""
avec pdfplombier.open(dossier) comme pdf :
pour i dans la plage (0, pages) :
page = pdf.pages[i]
texte = page.extract_text()
texte final += texte
Utilisez une boucle for pour parcourir toutes les pages et extraire le texte du PDF. Vous pouvez utiliser le package pdfplumber pour ouvrir le fichier pdf et le extrait_texte méthode pour récupérer le texte d'une page.
Le texte intégral étant stocké dans une variable, vous pouvez le traiter ultérieurement, en fonction de vos besoins. Si vous souhaitez convertir le texte en audio et l'enregistrer dans un nouveau fichier, utilisez le code suivant :
moteur = pyttsx3.init()
moteur.save_to_file (finalText, 'lorem.mp3')
moteur.runAndWait()
Lorsque vous exécuter ce code Python, il créera un fichier de livre audio dans son répertoire.
Si vous ne souhaitez pas enregistrer le livre audio et, par exemple, souhaitez réciter le fichier PDF, vous pouvez utiliser le code suivant à la place :
moteur = pyttsx3.init()
moteur.dire(texte final)
moteur.runAndWait()
Lorsque vous exécutez ce script, il récitera le fichier PDF.
Développer des projets avec Python
Python est connu pour sa polyvalence. Vous pouvez facilement créer des projets avec des applications pratiques en utilisant Python.
Si vous cherchez à vous salir les mains avec du code Python, vous pouvez commencer par développer des mini-projets. Quelques bonnes idées de départ sont une application de quiz, un chatbot, un jeu de serpent, un raccourcisseur d'URL, un grattoir Web ou un convertisseur d'unité.