前往小程序,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 删除。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
自动输入表单-以录入学生平时成绩到教务系统为例
STEP2:安装pyautogui,命令行输入pip install pyautogui
周星星9527
2019/07/30
7650
C++之学生成绩信息管理系统
为了加深对自己所学到的C++相关知识的理解,熟悉C++程序设计语言编程以及调试的基本技能,锻炼自己利用C++语言程序设计进行简单软件设计的基本思路和方法,提高运用高级语言解决实际问题的能力。我用C++做了一个学生成绩信息管理系统,下面介绍它所实现的功能以及具体的代码。
摘星
2023/04/27
1.1K0
单片机理论与实践课程总结与补充材料
部分课程资料:链接:http://pan.baidu.com/s/1slhLrUP 密码:it82
zhangrelay
2019/01/23
9870
基于Sikuli GUI图像识别框架的PC客户端自动化测试实践
最近两天,公司有个PC客户端的测试任务,除了最基础的功能测试外,还包括稳定性测试和兼容性测试需求。刚好去年接触过Sikuli这款基于GUI图像识别框架的自动化测试工具,于是便应用于测试工作中,辅助测试任务。初步试用下来,总体效果还算差强人意,也间接助我发现了一个致命级别的大bug(后续会介绍)。
大刚测试开发实战
2022/11/14
2.9K0
基于Sikuli GUI图像识别框架的PC客户端自动化测试实践
C语言学生成绩管理系统(设计报告和全部源码)「建议收藏」
实现如下功能: 1)能够实现学生成绩信息的插入、删除和修改; 2)能够实现各种查询(分别根据学生学号、姓名、课程名称等); 3)能够实现按照考试成绩、总评成绩进行排序; 4)能够查询某门课程的最高分、最低分并输出相应学生信息; 5)能够查询某门课程的优秀率(90 分及以上)、不及格率;
全栈程序员站长
2022/09/06
3.8K0
C语言学生成绩管理系统(设计报告和全部源码)「建议收藏」
用Python编写成绩管理分析系统(故事升级版)
微风和煦,散乱在办公桌上的测验小试卷还有几分“热度”,在小学助教的小王老师刚刚批改完昨天的语文单元测评,显得有些疲惫,但脸上却是慢慢的欣慰。看来通过最近的监督学习模型的转化和实践,他们的成绩有大幅度的提升,正准备把这个学习方法分享给其他在办公室的老师,上课铃响起了。像往常一样,教室外面陆陆续续的孩子,钻进了教室,清脆的“老师好!”成了这一时刻的主题曲,虽然只有短短的几秒钟,但却让每一位老师很“享受”,感觉就是一种动力加速着每一位老师的转化率。
王小王-123
2021/02/06
8560
用Python编写成绩管理分析系统(故事升级版)
BS1031-基于C#+SqlServer+CS架构实现学生成绩信息管理系统,学生成绩录入系统
采用C#+SqlServer+CS架构实现的学生成绩管理系统,学生成绩录入系统,系统采用多层C/S软件架构,采用C#编程语言开发技术实现界面窗口版本的学生管理系统程序界面,实现CS架构窗口事件监听,完成学生成绩创建,编辑,删除等。
计算机程序优异哥
2022/12/02
6020
数据库基础知识一(MySQL)[通俗易懂]
数据管理技术好坏评判的标准: (1)数据冗余 (2)数据共享 (3)数据独立性 (4)数据统一集中管理
全栈程序员站长
2022/08/03
1.9K0
数据库基础知识一(MySQL)[通俗易懂]
sikuli python java_自动化测试之sikuli调研
Sikuli可用于web和app的自动化测试中,操作简单,代码容易,但截图过程太过繁琐,所需要的图片内存占用量大,且sikuli的图片识别度较低,需对所要操作的图片进行精准截图。
全栈程序员站长
2022/11/17
1.7K0
sikuli python java_自动化测试之sikuli调研
一键自动化博客发布工具,用过的人都说好(segmentfault篇)
今天就以segmentfault为例,讲讲在blog-auto-publishing-tools中的实现原理。
程序那些事
2024/05/06
1670
一键自动化博客发布工具,用过的人都说好(segmentfault篇)
MySQL数据库基础练习系列8、成绩录入与分析系统
很多学生或者说是初学者在学习完成数据库的基础增删改查后就自认为在数据库这里就很熟悉了,但是不接触项目根本部知道需求,我这里准备了50个项目的基本需求来让大家来熟练各类项目的列信息,让大家更好的深入项目进行实战式的练习,可以让大家在后面面试的时候有更多更丰富的资历让大家可以与面试官侃侃而谈。
红目香薰
2024/06/07
890
分享大厂的一些笔试题目
乐鑫的笔试题是我做过最难的, 后面批次的, 我听说直接和高数相关, 用编程来求解数学问题.
嵌入式与Linux那些事
2021/11/25
1.4K0
Excel表格的35招必学秘技[配图]
一、让数据按需排序   如果你要将员工按其所在的部门进行排序,这些部门名称既的有关信息不是按拼音顺序,也不是按笔画顺序,怎么办?可采用自定义序列来排序。   1.执行“格式→选项”命令,打开“选项”
ytkah
2018/03/06
7.7K0
Excel表格的35招必学秘技[配图]
基于图像识别框架Airtest的Windows项目自动化测试实践
上个星期分享了《基于Sikuli GUI图像识别框架的PC客户端自动化测试实践》,但sikuli看起来怎么都像是上个世纪的界面风格,且功能过于简陋。而同样基于图像识别框架的Airtest,则无疑强大了许多,本次分享的内容是基于Airtest实现Windows应用的自动化测试,内容大纲:
大刚测试开发实战
2022/11/14
1.9K0
基于图像识别框架Airtest的Windows项目自动化测试实践
C语言|学生成绩管理系统
1.首先,列出所需要的头文件以及声明所需要的函数,细心的同学会发现,就算是数字,也用了字符串,方便输入以及存取信息。
诸葛青云
2020/03/13
4.7K0
C语言|学生成绩管理系统
Python处理Excel学生成绩
Python 安装包下载地址:https://www.python.org/downloads/ 打开该链接,点击下图中的版本号或者Download按钮进入对应版本的下载页面,滚动到最后即可看到各个平台的 Python 安装包。
逍遥子大表哥
2021/12/19
2.6K0
Python处理Excel学生成绩
大学机器人类公选课(ROS机器人高效编程)申请表、大纲、部分教案、进度表等材料分享
网页版系统演示(课程网址:https://www.shiyanlou.com/courses/854):
zhangrelay
2019/01/23
1.6K0
强!推荐一款自动化神器Autolt:不再重复工作
随着互联网不断发展,它给我们带来便利的同时,也带来了枯燥、重复、机械的重复工作。今天,我要和大家分享一款老牌实用的自动化工具:AutoIt,它能够让你告别繁琐的重复性工作,提高工作效率。
测试开发技术
2023/12/26
7980
实战案例!用1行Python代码识别增值税发票,然后用爬虫将数据自动录入系统
上次给大家分享了:我用一行Python代码还原了黑白照片,外婆哭了,今天我们继续看看1行Python代码能带来哪些惊喜~
程序员晚枫
2023/03/02
1K0
实战案例!用1行Python代码识别增值税发票,然后用爬虫将数据自动录入系统
自动化测试工具-Helium
现在越来越多的 Web 自动化项目都在使用 Selenium,其特点为提供丰富的 API 功能、支持多语言、多平台等。
wangmcn
2022/07/26
2.8K0
自动化测试工具-Helium
推荐阅读
相关推荐
自动输入表单-以录入学生平时成绩到教务系统为例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文