Ejemplos de Python - Amazon Polly

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de Python

Esta guía contiene otros ejemplos, algunos de los cuales son ejemplos de código de Python en los que se utiliza AWS SDK for Python (Boto) para realizar llamadas de la API a Amazon Polly. Es recomendable que configure Python y pruebe el código de ejemplo que se incluye en la siguiente sección. Para ver otros ejemplos, consulte Aplicaciones de ejemplo.

Configurar Python y probar un ejemplo (SDK)

Para probar el código de ejemplo de Python, necesita AWS SDK for Python (Boto). Para obtener instrucciones, consulte AWS SDK for Python (Boto3).

Para probar el código Python de ejemplo

En el siguiente ejemplo de código Python se realizan las siguientes acciones:

  • Utiliza AWS SDK for Python (Boto) para enviar una solicitud de SynthesizeSpeech a Amazon Polly (proporcionando un texto sencillo como entrada).

  • Obtiene acceso a la secuencia de audio resultante de la respuesta y la guarda en un archivo (speech.mp3) en el disco local.

  • Reproduce el archivo de audio con el reproductor predeterminado del sistema local.

Guarde el código en un archivo (example.py) y ejecútelo.

"""Getting Started Example for Python 2.7+/3.3+""" from boto3 import Session from botocore.exceptions import BotoCoreError, ClientError from contextlib import closing import os import sys import subprocess from tempfile import gettempdir # Create a client using the credentials and region defined in the [adminuser] # section of the AWS credentials file (~/.aws/credentials). session = Session(profile_name="adminuser") polly = session.client("polly") try: # Request speech synthesis response = polly.synthesize_speech(Text="Hello world!", OutputFormat="mp3", VoiceId="Joanna") except (BotoCoreError, ClientError) as error: # The service returned an error, exit gracefully print(error) sys.exit(-1) # Access the audio stream from the response if "AudioStream" in response: # Note: Closing the stream is important because the service throttles on the # number of parallel connections. Here we are using contextlib.closing to # ensure the close method of the stream object will be called automatically # at the end of the with statement's scope. with closing(response["AudioStream"]) as stream: output = os.path.join(gettempdir(), "speech.mp3") try: # Open a file for writing the output as a binary stream with open(output, "wb") as file: file.write(stream.read()) except IOError as error: # Could not write to file, exit gracefully print(error) sys.exit(-1) else: # The response didn't contain audio data, exit gracefully print("Could not stream audio") sys.exit(-1) # Play the audio using the platform's default player if sys.platform == "win32": os.startfile(output) else: # The following works on macOS and Linux. (Darwin = mac, xdg-open = linux). opener = "open" if sys.platform == "darwin" else "xdg-open" subprocess.call([opener, output])

Para obtener otros ejemplos, incluida una aplicación, consulte Aplicaciones de ejemplo.