悠悠2264 发表于 2020-4-10 12:32:23

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 *****



wuqramy 发表于 2020-4-11 00:13:28

玩玩?

-小雨点- 发表于 2020-4-11 00:27:10

{:5_102:}

liushoujie 发表于 2021-7-25 21:28:28

66666666666666666

Rosy7673 发表于 2021-8-23 21:57:57

支持一下
页: [1]
查看完整版本: python 智能语音助手