Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Python通过flask搭建音频流/文件服务

Python通过flask搭建音频流/文件服务

作者头像
用户9925864
发布于 2022-07-27 00:47:21
发布于 2022-07-27 00:47:21
2.2K00
代码可运行
举报
运行总次数:0
代码可运行

工作上需要搭建一个音频推送服务,考虑到使用python Flask搭建一个服务,下面给出简单的代码,代码中每次请求推送当前目录下的音频文件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from flask import Flask
from flask import Response
import os


app = Flask(__name__)
folder = './video'


@app.route('/video/<file_key>')
def stream_mp3(file_key):
    def generate():
        path = os.path.join(folder, file_key)
        with open(path, 'rb') as video:
            data = video.read(1024)
            while data:
                yield data
                data = video.read(1024)

    return Response(generate(), mimetype="video")


if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)

文件下面有2个视频文件供调试,

代码中读取文件每次读取1024字节,而不是一次全部读取到文件中,于是利用到了python 的 yield,为了简化问题,上面仅仅传递当前系统指定路径下的文件(实际工作中还有很多要处理,日志模块、视频处理分析等其他模块)

运行代码

浏览器输入:

http://127.0.0.1:8080/video/1.mp4 则弹出视频页面。

原创字数要达到300字就多写几句

Flask

Flask 是一个微型的 Python 开发的 Web 框架,基于Werkzeug WSGI工具箱和Jinja2 模板引擎。Flask使用BSD授权。Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。

示例代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()

启动

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ pip install Flask
$ python hello.py
 * Running on http://localhost:5000/

特性

  • 内置开发用服务器和debugger
  • 集成单元测试(unit testing)
  • RESTful request dispatching
  • 使用Jinja2模板引擎
  • 支持secure cookies(client side sessions)
  • 100% WSGI 1.0兼容
  • Unicode based
  • 详细的文件、教学
  • Google App Engine兼容
  • 可用Extensions增加其他功能
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法工程师的学习日志 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
一线Python运维开发带你秒懂Flask框架
Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。
小小科
2019/06/28
8950
Flask基础快速入门
简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。 flask中文文档 Jinja 文档 Werkzeug 文档 1、安装Flask
菲宇
2020/03/20
6690
浅谈Flask模板注入攻击
​ 由于最近一直在学二进制,所以web方面时间就不是很充足了,在buuoj上做了几道web,其中有一道flask(jinja2)的SSTI,之前也接触过,所以今天就来复现下flask ssti,这里推荐一个学习环境
ly0n
2020/11/04
1.7K0
浅谈Flask模板注入攻击
Flask简介&入门
Flask作为Web框架,它的作用主要是为了开发Web应用程序。那么我们首先来了解下Web应用程序。Web应用程序 (World Wide Web)诞生最初的目的,是为了利用互联网交流工作文档。
py3study
2020/01/16
9470
python flask音频流/文件服务
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/details/78658791
bear_fish
2018/09/14
3.1K0
python flask音频流/文件服务
python之flask框架(一)
python基础部分咱们基本已经掌握,前面也了解了tkinter的基本用法,这次给大家讲解一下很常见的web框架,就是这个flask框架。其实,python的web框架不仅仅是flask,还有Django,Weppy,Bottle等还有很多。其中flask框架呢是一个使用python编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。而且这个框架相对来说也是比较简单,非常适合初学者学习
找Bug
2022/07/22
5370
python之flask框架(一)
Flask基础使用
Flask 是一个 Python 实现的 Web 开发微框架。Flask 依赖两个外部库:Jinja2 模板引擎和 Werkzeug WSGI 工具集。
沈宥
2022/05/09
5270
Flask基础使用
小白学Flask第一天 | 我的第一个Flask程序
相信大部分人进来读这篇文章是因为以前没接触过Flask框架,这里我给大家介绍一下这个框架。
Python进击者
2019/08/20
5380
小白学Flask第一天 | 我的第一个Flask程序
一文解决easy的flask
Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。
润森
2019/08/29
5590
一文解决easy的flask
python flask入门
在阅读本文之前,我假设你已经了解了 Python 和 HTML 的基础知识。如果还没有,那么你可以去各大教程平台自行了解
SimpleAstronaut
2022/08/09
1.1K0
Hello Flask
Flask是一个使用Python编写的轻量级Web应用框架。基于Werkzeug WSGI工具箱和Jinja2 模板引擎。Flask使用BSD授权。 Flask被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。 Flask英文翻译为瓶子,烧瓶,与另一个web框架Bottle同义,意在表示另一种容器,另一个框架。而且他们两个也有一些相似的地方。
py3study
2020/01/16
1.4K0
Hello Flask
记录一次关于python-flask蓝图的坑
Flask是一个使用Python编写的轻量级Web应用框架。基于Werkzeug WSGI工具箱和Jinja2 模板引擎。Flask使用BSD授权。 Flask被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
一只特立独行的兔先生
2020/04/02
4.4K0
Flask快速入门,知识整理
一、Flask介绍(轻量级的框架,非常快速的就能把程序搭建起来)   Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。 “微”(mic
用户1214487
2018/01/24
2K0
Flask快速入门,知识整理
Flask 入门一( flask 框架和 flask-script 库)
今天小婷儿给大家分享的是Flask 入门一( flask 框架和 flask-script 库)。
AiDBA宝典
2019/09/29
4770
Flask 框架简单入门
flask是一种基于python ,并且依赖于Jinja2模板引擎(提供网页解析)和 Werkzeug WSGI服务(python web应用与web 服务之间的接口)的一种微型框架。其中:
全栈程序员站长
2022/09/30
5040
Python全栈(七)Flask框架之1.Flask简介与URL和视图介绍
有时候安装了一个Python库,可能在IDE如PyCharm中不能使用,这是因为: 通过pip安装的库默认一般在全局环境中,而PyCharm一般会默认创建虚拟环境,所以两者的环境不一致,导致安装的包不能正常导入使用,解决办法有2种:
cutercorley
2020/07/23
3.3K0
Python全栈(七)Flask框架之1.Flask简介与URL和视图介绍
flask框架菜鸟教程_flask框架是用来干什么的
最近开始学习flask 框架,本文用于flask 框架的基础入门学习,版本使用的是py3.7,学习内容相对比较简单,后续再扩充高级知识。
全栈程序员站长
2022/09/27
2.9K0
flask框架菜鸟教程_flask框架是用来干什么的
Flask-1 简介、安装、运行
一个用Python编写的微型Web框架,Flask遵守BSD协议。 它由Armin Ronacher开发,由Pocco-一群Python爱好者组成。 它基于Werkzeug工具包和Jinja2模板引擎。现在,最新的稳定版本是1.0,在2018年4月发布。使用它的顶级应用包括Pinterest,LinkedIn和Flask的社区页面。
XXXX-user
2019/07/23
1.6K0
Flask-1 简介、安装、运行
Flask框架使用
我们在搭建一下接口测试平台或者管理一些脚本的时候,通常希望有一个web页面来维护,今天就介绍一款使用python编写的轻量级Web应用框架,自带开发用服务器和debugger,简单易用。
用户5521279
2019/06/02
6720
【Flask】Python基于Flask应用
比如: 使用 Flask 开发数据库的时候,具体是使用 SQLAlchemy 还是MongoEngine,选择权完全掌握在你自己的手中。
天天Lotay
2023/05/07
7300
【Flask】Python基于Flask应用
相关推荐
一线Python运维开发带你秒懂Flask框架
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文