用python写一段web程序,实现朗读页面文本。朗读文本由一个按键触发,当按下按键,就朗读。框架用flask。
时间: 2023-02-08 14:06:51 浏览: 67
使用 Python 和 Flask 框架可以很容易地创建一个 Web 程序来实现朗读页面文本。首先,需要安装 Flask 框架和 gTTS 库,其中 gTTS 库用于生成语音。
下面是一个示例代码:
```python
from flask import Flask, render_template, request
from gtts import gTTS
import os
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/speak", methods=["POST"])
def speak():
text = request.form["text"]
tts = gTTS(text=text, lang="zh-cn")
tts.save("audio.mp3")
os.system("mpg321 audio.mp3")
return "OK"
if __name__ == "__main__":
app.run()
```
这段代码会启动一个 Flask 服务器, 在浏览器访问http://localhost:5000/ 就可以看到index.html 中的内容.
在 index.html 中,我们需要一个文本框和一个按钮,让用户输入文本并提交:
```html
<form method="post" action="{{url_for('speak')}}">
<input type="text" name="text" id="text">
<input type="submit" value="朗读">
</form>
```
当用户点击“朗读”按钮时,会触发向 /speak 发送一个 POST 请求,并将文本作为请求体发送。代码中的speak()函数会接收文本并使用 gTTS 将其转换为语音。然后将语音保存到本地,并使用 os.system("mpg321 audio.mp3") 播放。
在这个例子中,我们使用 mpg321 库播放音频文件,如果没有请先安装 mpg321。
仅供参