用python实现在线音乐播放器
时间: 2023-07-12 08:35:13 浏览: 203
基于python实现音乐播放器代码实例
实现在线音乐播放器需要前端和后端的技术。前端技术可以使用HTML、CSS和JavaScript,后端技术可以使用Python。
下面是一个基于Python Flask框架实现的在线音乐播放器的示例代码:
```python
from flask import Flask, render_template, url_for, request
import os
app = Flask(__name__)
@app.route("/")
def index():
music_list = os.listdir("static/music")
return render_template("index.html", music_list=music_list)
@app.route("/play", methods=["POST"])
def play():
music_name = request.form["music_name"]
return render_template("play.html", music_name=music_name)
if __name__ == "__main__":
app.run(debug=True)
```
这是一个简单的后端代码,我们需要在`static/music`文件夹下放置音乐文件,然后通过前端页面来实现在线播放。下面是HTML代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>在线音乐播放器</title>
</head>
<body>
<h1>在线音乐播放器</h1>
<ul>
{% for music in music_list %}
<li>
<form action="{{ url_for('play') }}" method="post">
<input type="hidden" name="music_name" value="{{ music }}" />
<button type="submit">{{ music }}</button>
</form>
</li>
{% endfor %}
</ul>
</body>
</html>
```
这是主页的HTML代码,我们通过Python代码中的`music_list = os.listdir("static/music")`获取`static/music`文件夹下的所有音乐文件,然后通过循环展示在页面上。当用户点击某个音乐文件时,会提交一个POST请求到`/play`路由,Python代码中的`play()`函数会接收到这个请求,然后渲染一个新的页面。
下面是播放页面的HTML代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>{{ music_name }}</title>
</head>
<body>
<h1>{{ music_name }}</h1>
<audio controls src="{{ url_for('static', filename='music/' + music_name) }}"></audio>
</body>
</html>
```
这是播放页面的HTML代码,我们通过Python代码中的`music_name = request.form["music_name"]`获取用户选择的音乐文件名称,然后在页面上渲染出音乐名称和播放器。由于音乐文件在`static/music`文件夹下,因此我们使用`url_for('static', filename='music/' + music_name)`来获取音乐文件的URL。
这样,我们就完成了一个简单的在线音乐播放器的实现。当用户访问`http://127.0.0.1:5000/`时,会展示出音乐列表,用户选择某个音乐文件后,会跳转到播放页面,自动播放该音乐文件。
阅读全文