2

私はセルビア語の atm を学習しようとしていて、最も頻繁に使用される単語を含む csv ファイルを取得しました。
ここでやりたいことは、スクリプトで各単語を API 経由で Google 翻訳に入力し、この翻訳を同じファイルに保存することです。
私は Python と JSON の完全な初心者なので、API から取得した JSON の使用方法について非常に混乱しています。

どうすれば翻訳にたどり着くことができますか?

from sys import argv
from apiclient.discovery import build
import csv
import json

script, filename = argv
serbian_words = []

# Open a CSV file with the serbian words in one column (one per row)
with open(filename, 'rb') as csvfile:

    serbianreader = csv.reader(csvfile)

    for row in serbianreader:

        # Put all words in one single list
        serbian_words.extend(row)

        # send that list to google item by item to have it translated
        def main():

            service = build('translate', 'v2',
            developerKey='xxx')

            for word in serbian_words:

                translation = service.translations().list(
                    source='sr',
                    target='de',
                    q = word
                    ).execute()

                    print translation # Until here everything works totally fine.



if __name__ == '__main__':
  main()

「 allein {u'translations': [{u'translatedText': u'allein'}]}」はセルビア語のドイツ語訳です。

どうすれば「アレイン」にたどり着けますか?Pythonに付属のjsonエンコーダーとデコーダーを実装しようとして、これを理解しようとしましたが、理解できません。

これについて何か助けていただければ幸いです。

4

1 に答える 1

1

item アクセスを使用して、最も内側の文字列にアクセスできます。

translation['translations'][0]['translatedText']

または、リストされているすべての翻訳をループすることもできます (リストです):

for trans in translation['translations']:
    print trans['translatedText']

Google の翻訳サービスは、特定のテキストに対して複数の翻訳を提供できるためです。

于 2012-11-30T15:11:40.717 に答える