前言 文的文字及圖片來源于網(wǎng)絡(luò),僅供學(xué)習(xí)、交流使用,不具有任何商業(yè)用途,版權(quán)歸原作者所有,如有問題請及時聯(lián)系我們以作處理。 作者: pk 哥 PS:如有需要Python學(xué)習(xí)資料的小伙伴可以加點(diǎn)擊下方鏈接自行獲取 http://note.youdao.com/noteshare?id=3054cce4add8a909e784ad934f956cef APP 也有文字轉(zhuǎn)換為語音的功能,雖然聽起來很別扭,但是基本能解決長輩們看不清文字或者眼睛疲勞,通過文字轉(zhuǎn)換為語音來獲取信息。 我們用 Python 能否實(shí)現(xiàn)文字轉(zhuǎn)語音呢,可以的,百度有個語音接口,可以在 Python 中直接調(diào)用,甚至提供了多種聲音選擇,當(dāng)然可以選擇萌妹子的聲音。 安裝百度接口 通過 pip 命令直接安裝( -i 后面是豆瓣的鏡像,這樣下載安裝速度更快)
創(chuàng)建應(yīng)用 百度語音合成地址如下:
點(diǎn)擊立即使用,沒有登錄的會要求先登錄,用自己的百度的賬號登錄就可以,沒有百度賬號的新注冊一個。 登錄后進(jìn)入應(yīng)用頁面,語音識別包括:輸入法、搜索、英語、粵語、四川話、遠(yuǎn)揚(yáng),還有語音合成等庫。我們可以看到,大部分 API 的調(diào)用次數(shù)免費(fèi)且無限制的。 我們創(chuàng)建一個應(yīng)用,勾選需要的接口權(quán)限,我的要求比較簡單,只是簡單的文字轉(zhuǎn)語音,所以勾選的接口也比較少。當(dāng)然,這個接口還可以做人臉識別、圖像識別、自然語言處理等,大家按需選擇。 創(chuàng)建完成后,我們在應(yīng)用列表可以看到應(yīng)用的三個重要的值:AppID、API Key、Secret Key,這三個值等下調(diào)用接口時會用到。 在文檔中心,我們來看看基本的上傳參數(shù)。 代碼調(diào)試 根據(jù)接口文檔,我們寫個簡單的代碼,能夠調(diào)通接口就行。 我們需要填入你創(chuàng)建應(yīng)用的 APP_ID、API_KEY 和 SECRET_KEY 的值。 其中,per 的值表示男女聲的,0 和 1 是普通的女聲和男聲,聽起來有點(diǎn)別扭,3 和 4 是帶有感情的,明顯比 0 和 1 有感情,大家可以試試。 from aip import AipSpeechAPP_ID = '17657240'API_KEY = 'YRG9NQ6lVQYOXeazzK9rAovG'SECRET_KEY = 'TlG8tchxR3YFGg0hFuC3ODy2QvRafc2v'client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)# 中文:zh 粵語:ct 英文:enresult = client.synthesis('哈哈哈哈', 'zh', 1, { 'vol': 5, 'per': 4})# 識別正確返回語音二進(jìn)制 錯誤則返回dict 參照下面錯誤碼if not isinstance(result, dict): with open('audio.mp3', 'wb') as f: f.write(result) 執(zhí)行代碼后,同級目錄下就會生成一個 audio.mp3 的文件。 秒變?nèi)鰦擅让?/strong> 我們加入金山詞霸的接口,每天返回優(yōu)美的英文和中文翻譯語句,我們讓度丫丫把她讀出來,讓聲音秒變?nèi)鰦擅让谩?/p> 金山詞霸的接口很簡單,直接 requests 調(diào)用,返回的 json 格式語句,我們返回英語語句和中文語句。 def get_msg(): url = 'http://open.iciba.com/dsapi/' # 金山詞霸每日一句 api 鏈接 html = requests.get(url) content = html.json()['content'] # 獲取每日一句英文語句 note = html.json()['note'] # 獲取每日一句英文的翻譯語句 return content, note 給出 APP_ID、API_KEY 和 SECRET_KEY 的值。 下面的步驟和上面一樣,只是把上面固定的文本換成接口返回的金山詞霸的語句而已。 我們打開文件,還能聽出一些撒嬌聲,不信?你打開聽聽! 我發(fā)文章的時候,金山詞霸返回的中文語錄是:事情很少是不可能的;人們之所以不成功,與其說是條件不夠,不如說是決心不夠。 接下來,就可以把這個撒嬌萌妹的音頻 發(fā)微信給朋友 或者免費(fèi)發(fā)短信給朋友 都可以 |
|