-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
47 lines (36 loc) · 1.35 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import os
import sys
import PyPDF2
from gtts import gTTS
def convert_pdf_to_audio(pdf_path):
"""
Esta función convierte un archivo PDF en un archivo de audio.
Primero, abre el archivo PDF y extrae el texto.
Luego, utiliza Google Text-to-Speech para convertir el texto en audio.
Finalmente, guarda el audio en un archivo mp3.
"""
# Abre el archivo PDF en modo lectura binaria
pdf_file = open(pdf_path, 'rb')
# Crea un objeto PDFFileReader
pdf_reader = PyPDF2.PdfReader(pdf_file)
# Inicializa una cadena vacía para almacenar el texto
text = ''
# Recorre todas las páginas del PDF y extrae el texto
for page_num in range(len(pdf_reader.pages)):
page = pdf_reader.pages[page_num]
text += page.extract_text()
# Cierra el archivo PDF
pdf_file.close()
# Crea un objeto gTTS con el texto extraído y el idioma español
tts = gTTS(text=text, lang='es')
# Guarda el audio en un archivo mp3
audio_path = os.path.splitext(pdf_path)[0] + '.mp3'
tts.save(audio_path)
print(f'Audio guardado en: {audio_path}')
if __name__ == "__main__":
# Comprueba si se proporcionó un argumento de línea de comandos
if len(sys.argv) != 2:
print('Uso: python3 main.py <ruta_del_pdf>')
sys.exit(1)
# Convierte el PDF a audio
convert_pdf_to_audio(sys.argv[1])