Pythonで音声読み上げ Macの場合

投稿者: | 2022-02-26
female software engineer coding on computer

各局皆様、こんにちは。アマチュア無線局、JS2IIUです。

Pythonプログラムでニュース読み上げさせようと思い、mac_sayを使ってみたので、そのメモを残します。

目次

mac_sayのインストール

$ pip install mac_say

mac_sayの使い方

以下の例のように、mac_sayをインポートし、言語と喋らせたい言葉を指定するだけです。Google Text-To-Speechを使う例です。他のオプションについては、mac_sayの公式ページを参照してください。

import mac_say.gtts

mac_say.gtts.say('ja', '喋らせたい言葉をここに')

プログラムの例

News APIからトップニュースを取り込んで、最初のニュースのタイトルを喋らせるプログラムです。News APIからニュースを取得する方法は、こちらこちらのページを参照してください。変数rにニュースのタイトルだけでなく、本文も読み込まれていますので、17行目の’title’を’description’に変更すれば、ニュースの中身の読み上げができるようになります。

以下のプログラムを動かすには、News APIのウェブサイトで、登録して、API_KEYを入手する必要があります。こちらのページに手順が詳しく解説されていますので参考にしてください。入手したAPI_KEYを4行目の’place your app key here’と置き換えてください。

import requests
import mac_say.gtts

API_KEY = 'place your app key here'
base_url = 'https://newsapi.org/v2/top-headlines?'

def getNewsHeader(isTalk):
    params = {
        'country': 'jp',
        'apiKey': API_KEY
    }

    r = requests.get(base_url, params=params)

    print( r.json()['articles'][0]['title'] )
    if isTalk == True:
        mac_say.gtts.say('ja', r.json()['articles'][0]['title'])

getNewsHeader(True)

参考

最後まで読んでいただきありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です