Python编写的在线语音提醒系统

在这个快节奏的时代,时间管理成为了每个人生活中的重要课题。为了帮助大家更好地管理时间,本文将介绍一个用Python编写的在线语音提醒系统。这个系统不仅能定时提醒你重要事项,还能通过语音播报,让你在忙碌中也能及时获取信息。

Python编写的在线语音提醒系统

系统设计思路

1. 核心功能

  • 定时提醒:用户可以设置特定时间,系统会在该时间点发出提醒。
  • 语音播报:通过语音合成技术,将文字信息转换为语音播报。
  • 在线管理:用户可以通过网页界面添加、修改和删除提醒事项。

2. 技术选型

  • 后端:使用Flask框架搭建Web服务,处理用户请求和数据存储。
  • 前端:采用HTML、CSS和JavaScript构建用户界面。
  • 语音合成:利用gTTS(Google Text-to-Speech)库实现文字到语音的转换。

系统实现步骤

1. 环境搭建

首先,确保你的Python环境已经安装了以下库:

pip install Flask gTTS pygame

2. 后端代码

创建一个名为app.py的文件,编写后端代码:

from flask import Flask, request, jsonify
from gTTS import gTTS
import pygame
import os
import threading
import time

app = Flask(__name__)
reminders = []

def play_audio(text):
    tts = gTTS(text=text, lang='zh-cn')
    audio_file = "reminder.mp3"
    tts.save(audio_file)
    pygame.mixer.init()
    pygame.mixer.music.load(audio_file)
    pygame.mixer.music.play()
    while pygame.mixer.music.get_busy():
        time.sleep(1)
    os.remove(audio_file)

def check_reminders():
    while True:
        current_time = time.strftime("%H:%M")
        for reminder in reminders:
            if reminder['time'] == current_time:
                play_audio(reminder['text'])
                reminders.remove(reminder)
        time.sleep(60)

@app.route('/add', methods=['POST'])
def add_reminder():
    data = request.json
    reminders.append(data)
    return jsonify({"status": "success"})

if __name__ == '__main__':
    threading.Thread(target=check_reminders).start()
    app.run(debug=True)

3. 前端代码

创建一个名为index.html的文件,编写前端代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>语音提醒系统</title>
    <script>
        function addReminder() {
            const time = document.getElementById('time').value;
            const text = document.getElementById('text').value;
            fetch('/add', {
                method: 'POST',
                headers: {
                    'Content-Type': 'application/json'
                },
                body: JSON.stringify({time: time, text: text})
            }).then(response => response.json())
              .then(data => {
                  if (data.status === 'success') {
                      alert('提醒添加成功!');
                  }
              });
        }
    </script>
</head>
<body>
    <h1>在线语音提醒系统</h1>
    <label for="time">时间(HH:MM):</label>
    <input type="text" id="time">
    <label for="text">提醒内容:</label>
    <input type="text" id="text">
    <button onclick="addReminder()">添加提醒</button>
</body>
</html>

系统运行与测试

  1. 启动后端服务:

    python app.py
  2. 打开浏览器,访问http://127.0.0.1:5000,你将看到简洁的界面。

  3. 输入提醒时间和内容,点击“添加提醒”,系统会在指定时间通过语音播报提醒你。

总结

这个基于Python的在线语音提醒系统,虽然简单,却非常实用。它不仅能帮助你更好地管理时间,还能通过语音播报功能,让你在忙碌中也不错过任何重要事项。希望这个系统能为你的生活带来便利,也期待你能在此基础上进行更多创新和扩展。

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

31阅读

外国教程python,python编程教学视频

2026年09月02日

25阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

27阅读

python教程大全集,python教程600集

2026年09月02日

26阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

22阅读