python 智能语音助手
本帖最后由 悠悠2264 于 2020-4-10 12:23 编辑由于这是我第一次发作品展示,有什么做的不好的地方,请指出,谢谢{:10_254:}
最近我用python写了一个语音助手的程序,如下图:
先说下思路:程序先调用pyaudio进行录制音频,保存到recording目录下,然后再通过requests调用百度api进行识别,识别后再根据library目录里的json格式的文件进行匹配,来实现打开程序,打开网站,搜索(如百度搜索),查找(查找本地文件)。所以程序、网站都得自己手动添加,添加步骤参考下面。
因此用本程序需要先去申请百度语音识别api,申请地址:https://ai.baidu.com/tech/speech/asr,申请后获取API_KEY和SECRET_KEY填入程序。
目前新注册账号免费使用10+5万次,按量付费调用一次0.0034元,还是比较划算的。
程序目录如下:
│语音助手.py
│
├─library
│ main.txt
│ openprogram.txt
│ openweb.txt
│ optimization.txt
│
├─plug-ins
│└─Everything(查找文件用的)
│ Everything.db
│ Everything.exe
│ Everything.ini
│ Everything.lng
│ Run History.csv
│
└─recording
output.wav(录音后生成)
result.txt(识别后生成)
图中是library/main.txt,是json格式,键是匹配内容,值是返回内容。如果匹配到“打开”,就调用open.txt(指的是openprogram.txt和openweb.txt这两个文件)来打开网站或程序,查找则调用everything进行查找(everything放在plug-ins/Everything目录下),后面搜索就用该键的值+识别的内容(除关键词和标点)。以上内容都可自行添加或修改。
这两张图是library/openweb.txt和openprogram.txt。openweb.txt的键是匹配内容,值是网站链接、openprogram.txt的键是匹配内容,值是程序路径(除去C:/Program Files/,C:/Users/Administrator/AppData/Local/)(还有一定要用“/”这个斜杠,因为json不支持“\”)。以上内容也都可自行添加或修改。
专有名词需要在百度api设置词库,如不设置,比如鱼C论坛会识别成VC论坛、UC论坛,VSCode识别后面会有乱码{:10_266:}
设置方法,登录控制台找到语音识别,应用,点开,再点击进行设置,上传txt,txt文件内一行一个关键词。
但是,你会发现设置后vscode可以了,但是鱼C论坛还是没用...
因此,就有了下面。
我们把识别错的内容改成对的就可以了,嘿嘿。
程序需先安装requests和pyaudio,安装过程如下:
requests模块,命令行输入如下命令即可安装
pip install requests
pyaudio模块由于版本问题pip直接安装不上,需要轮子,访问:https://www.lfd.uci.edu/~gohlke/pythonlibs,Ctrl+F搜索pyaudio,选择对应版本下载,如cp37就是python3.7版本,win32是32位系统版本,win_amd64是64位系统版本。
下载后执行以下命令安装:
cd 文件下载目录
pip install 文件名(带后缀)
下面上代码和完整程序下载链接,回帖后可见:
**** Hidden Message *****
玩玩? {:5_102:} 66666666666666666 支持一下
页:
[1]