GetLexicon - Amazon Polly

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

GetLexicon

Kode Python berikut menggunakan AWS SDK for Python (Boto) untuk mengambil semua leksikon yang disimpan di Wilayah. AWS Contoh menerima nama leksikon sebagai parameter baris perintah dan mengambil leksikon itu saja, mencetak jalur tmp di mana ia telah disimpan secara lokal.

Contoh kode berikut menggunakan kredensi default yang disimpan dalam file konfigurasi AWS SDK. Untuk informasi tentang membuat file konfigurasi, lihatLangkah 2.1: Mengatur AWS CLI.

Untuk informasi selengkapnya tentang operasi ini, lihat referensi untuk GetLexiconAPI.

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.")