M3U8 下载助手油猴脚本 - 完全使用指南

M3U8 下载助手油猴脚本 - 完全使用指南

地址 https://github.com/Sunrisies/m3u8_download

前言

你是否遇到过这样的情况:在网上看到一个精彩的视频,想要下载保存,却发现网站没有提供下载按钮?或者想要批量下载一系列视频,却只能一个一个手动操作?

M3U8 下载助手 油猴脚本就是为解决这些问题而生的。配合 M3U8 下载服务,它可以让你一键下载网页中的视频。


什么是油猴脚本?

油猴脚本(Userscript) 是运行在浏览器扩展 Tampermonkey 中的小程序。它可以:

  • 修改网页内容
  • 拦截网络请求
  • 添加自定义功能
  • 自动化操作

简单来说,油猴脚本让你可以"魔改"任何网页,添加你想要的功能。


安装步骤

第一步:安装 Tampermonkey 扩展

根据你的浏览器选择对应的安装方式:

浏览器 安装链接
Chrome Chrome Web Store
Firefox Firefox Add-ons
Edge Edge Add-ons
Safari Mac App Store

安装成功后,浏览器右上角会出现 Tampermonkey 图标。

第二步:安装 M3U8 下载助手脚本

  1. 打开 m3u8-downloader.user.js 文件
  2. Tampermonkey 会自动识别并弹出安装界面
  3. 点击 「安装」 按钮

或者你也可以:

  1. 点击 Tampermonkey 图标
  2. 选择 「添加新脚本」
  3. 将脚本内容粘贴进去
  4. 保存(Ctrl+S)

第三步:启动下载服务

油猴脚本需要配合后端服务使用。在终端中运行:

bash 复制代码
# 启动服务(默认端口 8080)
./m3u8_downloader serve

# 或指定端口
./m3u8_downloader serve --port 9090

如果修改了端口,需要同步修改脚本中的 BACKEND_URL

javascript 复制代码
const BACKEND_URL = 'http://localhost:9090';

使用教程

场景一:下载在线视频

  1. 打开视频网页

    访问包含视频的网站,脚本会自动开始工作。

  2. 点击浮动按钮

    当检测到 M3U8 链接时,页面右下角会出现 🎬 按钮,显示检测到的链接数量。

  3. 选择要下载的视频

    点击按钮,会弹出链接列表。如果有多个链接,选择你想要的那个。

  4. 输入文件名

    系统会自动根据网页标题生成文件名,你也可以自定义。

  5. 开始下载

    确认后,任务会发送到后端服务,弹出进度窗口实时显示下载状态。

场景二:批量复制链接

如果你不想立即下载,只想收集链接:

  1. 点击 🎬 按钮打开链接列表
  2. 点击 「📋 复制全部链接」 按钮
  3. 链接会复制到剪贴板,你可以保存到文件中稍后处理

场景三:下载嵌入式视频

有些网站的视频是通过 iframe 嵌入的,脚本同样支持:

  • 自动穿透 iframe 检测链接
  • 通过 postMessage 机制传递检测结果
  • 在顶层窗口统一显示

界面说明

浮动按钮

复制代码
🎬 1获取 m3u8 链接 (3)
      ↑           ↑
    图标        检测到的链接数

链接列表弹窗

复制代码
┌─────────────────────────────────────┐
│ 📺 m3u8 链接 (3)              [关闭]│
├─────────────────────────────────────┤
│ [📋 复制全部链接]                    │
│                                     │
│ 1. https://example.com/video.m3u8  │
│    [下载]                           │
│                                     │
│ 2. https://example.com/video2.m3u8 │
│    [下载]                           │
└─────────────────────────────────────┘

下载进度弹窗

复制代码
┌─────────────────────────────┐
│ 📥 视频名称           [−][✖]│
├─────────────────────────────┤
│ ████████████░░░░░░░ 65%    │
│ 状态:下载中...             │
│                             │
│ https://example.com/...     │
└─────────────────────────────┘

进度弹窗支持:

  • 最小化:点击 − 按钮收缩为圆形进度指示器
  • 恢复:点击圆形指示器恢复完整窗口
  • 关闭:点击 ✖ 按钮关闭弹窗

常见问题

Q: 为什么没有出现浮动按钮?

可能原因:

  1. 页面中没有检测到 M3U8 链接
  2. 脚本没有正确加载
  3. 网页使用了特殊的安全策略

解决方法:

  1. 打开浏览器控制台(F12),查看是否有错误信息
  2. 确认 Tampermonkey 已启用该脚本
  3. 刷新页面重试

Q: 下载失败怎么办?

可能原因:

  1. 后端服务未启动
  2. 网络连接问题
  3. 视频链接已失效

解决方法:

  1. 确认后端服务正在运行:curl http://localhost:8080/api/tasks
  2. 检查网络连接
  3. 尝试刷新页面获取新的链接

Q: 如何修改服务器地址?

编辑脚本顶部的配置:

javascript 复制代码
const BACKEND_URL = 'http://你的服务器地址:端口';

Q: 脚本会影响网页性能吗?

影响很小。脚本使用了以下优化:

  • @run-at document-start 但只注入轻量级监听器
  • MutationObserver 使用了过滤器,只监听相关属性
  • 定时扫描间隔为 3 秒,不会频繁执行

Q: 支持哪些浏览器?

理论上支持所有安装了 Tampermonkey 的浏览器:

  • Chrome / Chromium 80+
  • Firefox 68+
  • Edge 80+
  • Safari 12+(需要 Userscripts 扩展)

高级配置

自定义服务器地址

javascript 复制代码
const BACKEND_URL = 'http://192.168.1.100:8080';

修改检测间隔

javascript 复制代码
setInterval(scan, 3000); // 3000ms = 3秒,可以改为其他值

添加域名过滤

只在特定网站启用脚本,修改 @match

javascript 复制代码
// @match        *://*.youtube.com/*
// @match        *://*.bilibili.com/*

排除特定网站

在脚本中添加排除规则:

javascript 复制代码
// @exclude      *://*.google.com/*
// @exclude      *://*.github.com/*

总结

M3U8 下载助手油猴脚本是一个强大而易用的工具,它可以:

✅ 自动检测网页中的视频链接

✅ 一键发送到下载服务

✅ 实时显示下载进度

✅ 支持批量复制链接

✅ 支持 iframe 内的视频

配合 M3U8 下载服务使用,让你轻松保存喜欢的视频。


相关链接

相关推荐
Cloud_bread2 分钟前
从ReAct到自主闭环:Agentic Coding核心执行引擎的技术演进
前端·react.js·前端框架
cidy_9811 分钟前
OptMem 使用教程
前端
满栀58513 分钟前
原生JS + ECharts 多图表可视化实战:从业务实现到工程化优化
开发语言·javascript·echarts
杉氧16 分钟前
用 Compose 挑战交互与动效天花板:ComposeCraftLab 开源实验室全解析
android·前端·kotlin
Canace24 分钟前
AI 生成到 90% 突然断了:你的解决方案是?
前端·人工智能
TinssonTai27 分钟前
Vite 8 版 Chrome 插件全家桶,popup/options/sidepanel 一次集齐
前端·vue.js
玉鸯30 分钟前
让 Agent 面向用户:AG-UI 协议构建 Agent 前端
前端·python·agent
趣味科技44 分钟前
记录修复EAGET忆捷移动硬盘损坏
windows·数据分析·硬件工程
程序员黑豆1 小时前
鸿蒙应用开发 @Extend 装饰器使用教程
前端·harmonyos
杨先生哦1 小时前
【2026热端攻防系列 10/12】前端凭据安全深度攻防:Cookie/Storage劫持、会话固定、凭据泄露与浏览器最新加固方案
前端·笔记·安全·web安全