利用百度新聞摘要能力和微信小程序,快速抽取新聞摘要內容并進行語音播報,讓AI做回新聞主播!本文主要介紹小程序功能開發實現過程,分享主要功能實現的子程序模塊,都是干貨哦!!
想了解python3下的技能調用,請參看我之前的帖子:《AI新聞主播為您讀報》
https://ai.baidu.com/forum/topic/show/953193
1 系統框架
這里用到的主要技術有:百度通用文字識別、語音合成、新聞摘要和微信小程序。小程序通過對上傳新聞照片進行文字識別,將新聞內容由圖片轉換成文字,然后通過新聞摘要能力提取核心內容摘要,并將新聞摘要內容利用語音合成朗讀出來。非常適合帶上老花鏡也看不見字的老年人,拍張照片就能將報紙內容轉換成聲音,聽就完了。
2 調用通用文字識別API
2.1在控制臺創建應用,調用通用文字識別API,“獲取API Key/Secret Key”。
接口文檔地址:https://ai.baidu.com/docs#/OCR-API/e1bd77f3
請求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic
2.2 程序實現
3 調用新聞摘要API
3.1 在控制臺創建應用,調用新聞摘要API,“獲取API Key/Secret Key”。
(1)接口文檔地址:https://ai.baidu.com/docs#/NLP-Apply-API/c3df5fbc
(2)請求URL: https://aip.baidubce.com/rpc/2.0/nlp/v1/news_summary
Body中放置請求參數,參數詳情如下:
body整體文本內容可以支持GBK和UTF-8兩種格式的編碼,這里選擇GBK編碼。
GBK支持:默認按GBK進行編碼,輸入內容為GBK編碼,輸出內容為GBK編碼,否則會接口報錯編碼錯誤;
UTF-8支持:若文本需要使用UTF-8編碼,請在url參數中添加charset=UTF-8 (大小寫敏感) 例如 :https://aip.baidubce.com/rpc/2.0/nlp/v1/lexer?charset=UTF-8&access_token=24.f9ba9c5241b67688bb4adbed8bc91dec.
2592000.1485570332.282335-8574074。
(3)返回參數
默認返回內容為GBK編碼;
若用戶指定輸入為UTF-8編碼(通過指定charset參數),則返回內容為UTF-8編碼。
3.2 程序實現
4 調用語音合成API
4.1 在控制臺創建應用,調用語音合成API,“獲取API Key/Secret Key”。
(1)接口文檔地址:https://ai.baidu.com/docs#/TTS-API/top
(2)請求URL: https://tsn.baidu.com/text2audio
將文本以及其他參數寫入到body里面,利用html表單的方式將參數傳遞到服務端。 所有的參數都在body中。body里面的數據為:
tex=***&lan=zh&cuid=***&ctp=1&aue=3&tok=***
(3)返回參數
需要根據 Content-Type的頭部來確定是否服務端合成成功。
如果合成成功,返回的Content-Type以“audio”開頭,例如:
aue =3 ,返回為二進制MP3文件,具體header信息 Content-Type: audio/mp3;
4.2 程序實現
(新聞稿 2019-09-11)