スキップしてメイン コンテンツに移動

RSSからYoutube/Podcast配信

翻訳

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.py
def 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
結果はこちら


これで要約&翻訳した記事を投稿できるようになりました。
次は音声作成に入ります。

参考URL:

Cloud Translation API  |  Google Cloud
 

このブログの人気の投稿

RSSからYoutube/Podcast配信

皆さん、情報収集はどの様にされていますでしょうか? 私は最先端に情報に触れる為、海外ニュースをRSSで購読しているのですが、私の英語力/語彙力では時間が掛かかってしょうがない。 また、できれば目で読むのではなく、音声で聞き流しながら通勤や他の作業中に行いたい。 という事で自動でニュースを収集・要約・翻訳し、それをブログ・ポッドキャスト・Youtubeに自動投稿するPythonプログラムを作成して時短化しました。 その手法を公開してますので参考にしてください。 Bloggerの立ち上げ方 GCPとBloggerの連携 情報収集自動化 Blogger自動投稿 本文要約 翻訳 音声作成 動画作成 Youtubeにアップロード Youtubeの投稿制限の回避方法 Podcast配信 翻訳・要約の改善(GPT-3) 以下のURLで上記から作成したブログやYoutubeを公開しています。参考までに見てください。 ブログ:海外ニュースを仕入れてお届け YouTube:海外Newsを仕入れてお届け Amazon Music:海外ニュースを仕入れてお届け。 Google Podcasts:海外ニュースを仕入れてお届け。 Apple Podcasts:海外ニュースを仕入れてお届け。

Bloggerの立ち上げ

Bloggerとは BloggerはGoogleのサービスの一つで、無料でブログを始めることができます。 Googleアカウントが必要となりますので、ない方はアカウントの作成をお願いします。 Bloggerサイトへのログイン https://www.blogger.com/から「ブログの作成」を選択してください。 Googleアカウントを聞かれるので、Googleアカウントとパスワードを入力してください。 ブログの名前を入力 作成するブログの名前を決めます。これは後から変えられるのでとりあえずは書こうとしてる内容に沿ったものを記入してください。 ブログのURL(インターネット上の所在地)を作成します。 こちらも変更できる(※)のですがので、頻繁に変更すると読者や検索などから外されてしますので、個人名や法人名など変更しないことを前提に名付けた方が良いと思います。 (※「.blogspot.com」以外のカスタムドメインを自分でとって、それを設定することもできます) プロファイルの作成 ブログが作成されるとプロファイルの作成画面が出てきます。ブログ読者に見られることを意識して、ユーザー名やわかりやすい説明を記入しましょう。 以上でブログが作成できました。作成したURLをブラウザに打ち込んでみましょう! 貴方だけのブログサイトが立ち上がりました。 次は GCP(Google Cloud Platform)とBloggerを連携 させてみましょう。 参考: Blogger Help  

PodCastでの音声配信

PodCastでの音声配信 Fire Base Hostingを使用してのPodCast配信 静的コンテンツ配信にFire Base Hostingが使えそうなので、ここからRSSフィードとmp3音声ファイルを配信します。 以前のBlogger連携と同様にFirebaseのAPIも管理できるように変更してください。 Fire Base Hostingの設定 Fire Baseコンソールにアクセスしてプロジェクトを作成します。 またプロジェクト内に入り「+アプリを追加」をクリックして、次に(</>)をクリックしてWebアプリケーションの設定ワークフローを起動します。 FireBaseHostingを有効にして、指示された通りにnpmを実行していくと、プロジェクトとアプリが作成されます。 作成が終わると表示されるプロジェクトの設定画面にあるプロジェクト-IDをプログラムの中で使うので覚えていてください。 また[プロジェクトの設定] > [サービス アカウント] を開きます。 [新しい秘密鍵の生成] をクリックし、[キーを生成] をクリックして確定します。 キーを含む JSON ファイルを「firebase.json」ファイルとして保管します。 ライブラリの追加 $ pip install firebase_admin Pythonプログラム test.pyに以下のコードを記述します。 公式のサンプルを一部変更して持ってきています。 test.py FIREBASE_SECRETS_FILE = "./firebase.json" FIREBASE_HOSTING_URL = "https://firebasehosting.googleapis.com/v1beta1" FIREBASE_HOSTING_SITE = FIREBASE_HOSTING_URL + "/sites/project-id" def fb_getToken (): cred = credentials . Certificate ( FIREBASE_SECRETS_FILE ) token = cred . get_access_token () r...