Python实现随机选播视频的示例代码

一、示例代码:

python 复制代码
import os
import random
import subprocess

video_type = ['avi', 'mp4', 'rm', 'rmvb', 'VOB']


def random_walk(root_dir):
    all_videos = []
    for root, dirs, files in os.walk(root_dir):
        for file in files:
            extract_str = file.split('.')[-1].lower()
            if extract_str in video_type:
                all_videos.append(os.path.join(root, file))

    return all_videos


if __name__ == '__main__':
    all_videos = random_walk('/home/lijiang/Videos')
    print(all_videos)

    for i in range(random.randint(1, 5)):
        video = random.choice(all_videos)

    print('打开播放视频:' + video)
    subprocess.call(['open', video])

二、运行结果:

三、源码说明:

1、若是Windows系统,将Linux下的subprocess.call()替换为os.startfile(video)。此方法会调用默认播放器选播视频。视频文件的扩展名,这里只列出了常见的几种格式。

相关推荐
IT_Octopus4 小时前
【零基础入门 LLM 开发 · Day 13】:LangChain 的对话记忆——Message 对象版
人工智能·python·langchain
Jmyd01234 小时前
Web端3D营销展厅技术实现路径:从素材上云到线索回流的数据链路
前端·3d·性能优化·三维数字化
砚凝霜4 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
2603_965148114 小时前
社区与学习资源:从入门到精通的API选品学习路径
数据库·人工智能·python·学习·数据挖掘
智能直播5 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码
CCblandy5 小时前
令牌桶在 0.9 倍负载超发 19%、固定窗口边界放行 20 个:四种限流算法同构实测
后端·python·算法·性能优化·架构
u0111026756 小时前
JPG、PNG、WebP 怎么选?按透明度、体积和使用场景做判断
前端·javascript·vue.js·图像处理·ai作画
Cc.Y6 小时前
Java零基础入门:深入Java核心:文件IO与序列化全解
java·开发语言·python
拿本唠嗑AI研究6 小时前
本体工程实战指南:从建模到可维护的完整落地路径
java·人工智能·python·jena·ontology
jerrywus6 小时前
让 AI 写完代码后交一份报告:我改造了 answer-me-with-html
前端·claude·cursor