GetLexicon - Amazon Polly

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

GetLexicon

O código Python a seguir usa o AWS SDK for Python (Boto) para recuperar todos os léxicos armazenados em uma região. AWS O exemplo aceita um nome de léxico como parâmetro de linha de comando e obtém somente esse léxico, imprimindo o caminho tmp onde foi salvo localmente.

O exemplo de código a seguir usa credenciais padrão armazenadas no arquivo de configuração do AWS SDK. Para obter informações sobre como criar o arquivo de configuração, consulte Etapa 2.1: Configurar o AWS CLI.

Para obter mais informações sobre esta operação, consulte a referência da API GetLexicon.

from argparse import ArgumentParser from os import path from tempfile import gettempdir from boto3 import Session from botocore.exceptions import BotoCoreError, ClientError # Define and parse the command line arguments cli = ArgumentParser(description="GetLexicon example") cli.add_argument("name", type=str, metavar="LEXICON_NAME") arguments = cli.parse_args() # Create a client using the credentials and region defined in the adminuser # section of the AWS credentials and configuration files session = Session(profile_name="adminuser") polly = session.client("polly") print(u"Fetching {0}...".format(arguments.name)) try: # Fetch lexicon by name response = polly.get_lexicon(Name=arguments.name) except (BotoCoreError, ClientError) as error: # The service returned an error, exit gracefully cli.error(error) # Get the lexicon data from the response lexicon = response.get("Lexicon", {}) # Access the lexicon's content if "Content" in lexicon: output = path.join(gettempdir(), u"%s.pls" % arguments.name) print(u"Saving to %s..." % output) try: # Save the lexicon contents to a local file with open(output, "w") as pls_file: pls_file.write(lexicon["Content"]) except IOError as error: # Could not write to file, exit gracefully cli.error(error) else: # The response didn't contain lexicon data, exit gracefully cli.error("Could not fetch lexicons contents") print("Done.")