# Python语音机器人 **Repository Path**: ouaqq/python-voice-robot ## Basic Information - **Project Name**: Python语音机器人 - **Description**: 使用Python借助一些api实现部分功能 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 2 - **Created**: 2023-06-19 - **Last Updated**: 2025-01-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Python语音机器人 #### 一、介绍 本文主要运用所学的python知识,基于Python的一些库制做了一个带有人机互动、音乐播放、天气播报及新闻播报功能的GUI图形界面。在人机交互、音乐播放、天气播报功能中,将通过麦克风获取的语音信息,进行解析并提取其中的关键信息,来分别获取图灵机器人的返回消息、到指定网页去爬取把需要的内容,最后通过调用Python的库播放出来,新闻播报功能中则直接爬取新闻信息并播放。最终将四个功能模块集合起来使用wxPython模块作成GUI界面。 #### 二、软件架构 (一)总体设计 1、基本设计概念和处理流程 主要功能模块流程图如下: ![输入图片说明](image/11.png) 2、结构 ![输入图片说明](image/22.png) (二)接口设计 1、用户接口 | 命令 | 语法 | 信息正确 | |---|---|---| | 人机互动 | 点击 | 实现命令 | | 音乐播放 | 点击 | 实现命令 | | 天气播报 | 点击 | 实现命令 | | 新闻播报 | 点击 | 实现命令 | 2、外部接口 |软件、硬件 |鼠标 |音响 |麦克风| |---|---|---|---| |人机互动模块 |连接 |连接 |连接| |音乐播放模块 |连接 |连接 |连接| |天气播报模块 |连接 |连接 |连接| |新闻播报模块 |连接 |连接 |未连接| (三)详细设计、系统功能模块结构 1、人机互动 算法流程: ![输入图片说明](image/33.png) 2、音乐播放 算法流程: ![输入图片说明](image/44.png) 3、天气播报 算法流程: ![输入图片说明](image/55.png) 4、新闻播报 算法流程: ![输入图片说明](image/66.png) (四)界面设计 算法流程: ![输入图片说明](image/77.png) #### 三、安装教程 1. pip install -r requirements.txt #### 四、使用说明 把以下参数更换成你自己的 ``` # 百度需要的参数 APP_ID = '000000' API_KEY = 'xxxxxx' SECRET_KEY = 'xxxxxx' # 图灵机器人需要的参数 tuling_apiKey = "xxxxxx" tuling_userId = "000000" # 易客云需要的参数 yikeyun_appid = '000000' yikeyun_appsecret = 'xxxxxx' ``` #### 五、相关api链接开通 易客云平台 (https://yikeapi.com/account) 图灵机器人 http://www.tuling123.com/member/robot/index.jhtml 百度语音识别api 介绍请看 https://ai.baidu.com/tech/speech?_=1687103124997 百度语音识别api 控制台: https://console.bce.baidu.com/ai/?fromai=1#/ai/speech/overview/index 按照这些步骤一步一步创建自己的应用,完成个人实名认证可以有一定的免费使用量,创建应用完成后,从”我的应用“ 即可看到相应的userid, apikey 等。 #### 六、正式开始 1、运行main.py `python main.py` 废话不多说,先上效果图 ![输入图片说明](image/0.png) #### 功能一:人机互动 ![输入图片说明](image/1.png) #### 功能二:播放音乐 ![输入图片说明](image/2.png) #### 功能三:天气 ![输入图片说明](image/3.png) #### 功能四:一句话新闻 ![输入图片说明](image/4.png)