- リンクを取得
- ×
- メール
- 他のアプリ
Google翻訳を使った手順
今回も現在使用している方法とは異なりますがGoogle翻訳を使用してテキスト翻訳します。この作業にはGCPとBloggerの連携の手続きが先に必要です。
Pythonライブラリの追加
$ pip install google-api-python-client
$ pip install google-auth-httplib2
$ pip install google-auth-oauthlib
$ pip install google-cloud-translate
Pythonプログラム
test.pyに以下のコードを記述します。Google翻訳を使用して英語から日本語に変換します。
test.pydef getTrans(text):
trans = get_authenticated_service(TRANS_API_SERVICE_NAME,TRANS_API_VERSION)
project=trans.projects()
response=project.translateText(
parent = 'projects/your_project_name',
body={
'contents': [text],
'sourceLanguageCode': 'en-US',
'targetLanguageCode': 'ja-JP',
'mimeType': 'text/plain'
}
).execute()
translations = response.get('translations')
if translations == None or len(translations) == 0:
print(response)
return None
translatedText = translations[0].get('translatedText')
return translatedText
your_project_nameはGCPで作成したプロジェクト名(RSS2Podcast)をいれてください。
以前のgetBody()から上記のgetTrans()を呼び出します。タイトルや本文に色々ゴミが入ってくるので軽く削除してます。
またブログアップロードする際に改行文字をHTMLの改行タグ(<BR>)に変更しています。
test.py
def getBody(link):
try :
res = requests.get(link)
extractor.analyse(res.text)
text, title = extractor.as_text()
title = re.sub('[-|:|\||\[|\(|\{].*','',title)
text = re.sub('&.*?;','',text)
text = getSummary(text)
title = getTrans(title)
text = getTrans(text)
return postBlog(title,text.replace('\n','<BR>'),'TECHNOLOGY')
except Exception as e :
print(e)
return None
これで要約&翻訳した記事を投稿できるようになりました。
次は音声作成に入ります。