Skip to content

levywang/random_web_player

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Random Web Player

配合接口实现类似抖音效果的随机在线播放器,内置接口提供了 50W+ 随机地址播放

Cloudflare Page: https://random-web-player.pages.dev/

Vercel Page: https://random-web-player.vercel.app/


GitHub license Release Version GitHub Star GitHub Fork Repo Size GitHub Issue

Docker Stars Docker Pulls

Star History

Star History Chart

Getting Started

本地运行

git clone https://github.com/levywang/random_web_player.git
cd random_web_player
pip install -r requirements.txt
python main.py

默认运行的API地址:http://127.0.0.1:8000/

可以配置反代和域名,替换 index.html 中的 https://api.wwlww.org/v1/get_video

注意 main.py 文件中的路径地址,为爬取到的播放源地址,参考 video_urls.txt

Docker 部署

注意:Python Version >= 3.7

git clone https://github.com/levywang/random_web_player.git
cd random_web_player
docker run -d -p <your_server_port>:80 -v $PWD:/app --name random_web_player levywang/random_web_player:latest

直接配置index.html

直接下载 index.html 文件,复制到网站根目录,配置好域名即可访问

你也可以设置自己的接口地址,默认接口地址为:https://api.wwlww.org/v1/get_video 直接查找 index.html 文件替换默认接口关键字替换即可

支持以下两种返回格式:

  1. Json 格式
{
  "url": "https://videos1.jrgzhw.com/20240624/NJrY0K71MlwRo/index.m3u8",
  "img_url": "https://videos1.jrgzhw.com/20240624/NJrY0K71MlwRo/image/f6974aa4f41f27d828e2e3f17549bf92.webp"
}
  1. 纯文本格式
    同时也支持直接返回纯文本地址的 GET 请求,例如 https://mm.diskgirl.com/get/get1.php,返回格式:
https://txmov2.a.yximgs.com/upic/2021/07/06/11/BMjAyMTA3MDYxMTIxNDZfMjM2MzkyOTY3Nl81MjcwMDc1MjQ0M18yXzM=_b_Bbbb2fa053f02e7f32cef6efe3577eb6d.mp4

PS:请确保请求地址支持跨域,否则无法正常播放

爬虫说明

该爬虫支持爬取开启了 nginx autoindex 网站,运行前请确认变量 base_url 是否可以访问,默认会爬取所有 m3u8 地址,存储到 m3u8_links.txt 文件中

使用前,确保你已经安装了所需的 Python 库:

pip install requests beautifulsoup4

关于爬虫源地址的说明

使用 https://www.zoomeye.ai/ (挂代理),搜索规则如下:

"<head><title>Index of /</title></head>" && "<a href=\"20230817/\">20230817/</a>"

日期并无特殊含义,仅作为示例过滤,您也可以使用正则表达式实现

可以获取到很多类似的地址,见下图: zoomeye

License

This project is provided under a GNU Affero General Public License v3.0 license that can be found in the LICENSE file. By using, distributing, or contributing to this project, you agree to the terms and conditions of this license.