Ljudböcker blir allt mer populära jämfört med traditionella e-böcker. De är bekvämare eftersom du kan lyssna på dem när som helst och var som helst.

Du kan konvertera en eBook PDF till en ljudbok med ett enkelt Python-skript. Med hjälp av några enkla bibliotek kan du utveckla ett projekt som läser upp en PDF och lagrar ljudboken som en ny fil.

Installera nödvändiga paket

Du måste installera PyPDF3, pyttsx3, och pdf rörmokare paket för att komma igång. Du kan installera dessa paket med hjälp av pip-pakethanteraren. Se till att du redan har gjort det installerat pip på ditt system. Kör följande kommando i kommandotolken för att installera paketen:

pip Installera PyPDF3 pyttsx3 pdfplumber
  • Du kan använda PyPDF3 bibliotek för att läsa och redigera PDF-filer i Python.
  • De pyttsx3 biblioteket tillhandahåller text-till-tal-konvertering.
  • pdf rörmokare är ett bibliotek som låter dig extrahera text och tabeller från PDF-filer.

Koden som används i detta projekt är tillgänglig i en GitHub-förråd och är gratis för dig att använda under MIT-licensen.

instagram viewer

Konvertera en PDF till en ljudbok med Python

När du har installerat ovanstående paket är du redo att importera dem till din python-fil:

importera PyPDF3
importera pyttsx3
importera pdf rörmokare

Du måste ange namn och plats för PDF-filen du vill konvertera. För enkelhetens skull kan du använda vilken PDF-exempel som helst. Kopiera det till samma katalog som ditt skript och lagra dess namn i en variabel; om det heter Lorem.pdf, till exempel:

fil = 'Lorem.pdf'

Skapa sedan ett filobjekt för PDF-filen och ett PDF-läsarobjekt:

bok = öppen (fil, 'rb')
pdfReader = PyPDF3.PdfFileReader (bok)

Senare kommer du att gå igenom alla sidor i PDF-filen. För att hitta det totala antalet sidor, använd antal Sidor fast egendom:

sidor = pdfReader.numPages

Nu är du redo att extrahera texten från PDF-filen:

finalText = ""

med pdfplumber.open(fil) som pdf:
för i inom intervallet (0, sidor):
sida = pdf.sidor[i]
text = page.extract_text()
finalText += text

Använd en for-loop för att iterera genom alla sidor och extrahera texten från PDF: en. Du kan använda pdfplumber-paketet för att öppna pdf-filen och extrakt_text metod för att hämta text från en sida.

Med hela texten lagrad i en variabel kan du bearbeta den vidare, beroende på dina krav. Om du vill konvertera texten till ljud och spara den i en ny fil, använd följande kod:

motor = pyttsx3.init()
engine.save_to_file (finalText, 'lorem.mp3')
motor.runAndWait()

När du kör den här Python-koden, kommer den att skapa en ljudboksfil i sin katalog.

Om du inte vill spara ljudboken och till exempel vill recitera PDF-filen kan du istället använda följande kod:

motor = pyttsx3.init()
motor.säga(finalText)
motor.runAndWait()

När du kör det här skriptet reciterar det PDF-filen.

Utveckla projekt med Python

Python är känt för sin mångsidighet. Du kan enkelt skapa projekt med praktiska applikationer med Python.

Om du vill bli smutsig med Python-kod kan du börja med att utveckla miniprojekt. Några bra startidéer är en frågesportapp, chatbot, ormspel, URL-förkortare, webbskrapa eller enhetsomvandlare.