Здравствуйте, сегодня я покажу вам, как сделать программу для чтения PDF-файлов с помощью Python
, так что давайте начнем.

Добавление библиотек:

import pyttsx3
import PyPDF2

В этой программе мы будем использовать библиотеки «pyttsx3» и «PyPDF2», но не забудьте сначала загрузить их.

Получение местоположения файла

book = input("Enter the file location : ")
pdfobj = open(book, 'rb')
pdfreader = PyPDF2.PdfReader(pdfobj)
engine = pyttsx3.init()
text = ""

Здесь мы сначала получаем местоположение файла, затем открываем этот файл с кодом PyPDF2 с именем «open», а «rb» означает «Чтение двоичного файла», и мы создаем переменную с именем «pdfreader» и читаем наш «pdfobj» с помощью «PyPDF2.PdfReader». (pdfobj)», переменная engine — это наш голосовой движок для чтения pdfobj, текстовая переменная пуста, поэтому далее мы можем извлечь наш pdf-файл в текстовую переменную в текстовом формате.

Извлечение страниц

for numpages in range(len(pdfreader.pages)):
    page = pdfreader.pages[numpages]
    text += page.extract_text()

здесь мы сначала получаем количество страниц, а затем извлекаем его в нашу пустую текстовую переменную

Чтение файла

choice = input("'S' for start playing\n'E' for stop program\n")
if choice == 's' or choice == "S":
    print(text)
    engine.say(text)
    engine.runAndWait()

else:
    engine.stop()

мы получаем от пользователя выбор «S» или «E»,
«S» для начала воспроизведения и «E» для выхода из программы, и если пользователь выбирает «S», мы печатаем нашу текстовую переменную (извлекаемую pdf), затем прочитайте его голосом, используя код «engine.say», это наша переменная движка, полученная из библиотеки «pyttsx3», чтобы прочитать файл pdf голосом, затем напишите код «engine.runAndWait()», чтобы дождаться, когда программа дойдет до нашего pdf файл заканчивается, если пользователь выбирает двигатель «E», просто остановитесь с кодом «engine.stop ()», здесь вы это сделали

Полные коды

import PyPDF2
import pyttsx3

book = input("File Location(without apostropohes): ")
pdfobj = open(book, 'rb')
pdfreader = PyPDF2.PdfReader(pdfobj)
engine = pyttsx3.init()

text = ""

for numpages in range(len(pdfreader.pages)):
    page = pdfreader.pages[numpages]
    text += page.extract_text()

choice = input("'S' for start playing\n'E' for stop program\n")
if choice == 's' or choice == "S":
    print(text)
    engine.say(text)
    engine.runAndWait()

else:
    engine.stop()

спасибо за чтение, и если вам нравится наш контент, пожалуйста, нажмите кнопку хлопка ниже!!