本期再来介绍一个便捷项目:Douyin_TikTok_Download_API。
本项目是基于 PyWebIO,FastAPI,HTTPX,快速异步的抖音/TikTok获取工具,并通过Web端实现在线批量解析以及下载无水印视频或图集,数据(获取)API,iOS快捷指令无水印下载等功能。大家可以自己部署或改造本项目实现更多功能,也可以在你的项目中直接调用scraper.py或安装现有的pip包作为解析库轻松获取数据等.....
一些简单的运用场景:
下载本无法下载的视频,进行数据分析,iOS无水印下载(搭配iOS自带的快捷指令APP 配合本项目API实现应用内下载或读取剪贴板下载)等.....
✨ 支持功能:
- 网页端批量解析(支持抖音/TikTok混合解析)
- 在线下载视频或图集。
- 制作pip包方便快速导入你的项目
- iOS快捷指令快速调用API实现应用内下载无水印视频/图集
- 完善的API文档(Demo/演示)
- 丰富的API接口:抖音网页版、TikTok网页版、哔哩哔哩网页版。
基本能实现所有想要功能。
部署前的准备工作
对应平台的API获取
本步骤需要我们获取cookie,这是必须做的!
这里以抖音为例。
打开一个无痕浏览器窗口,无需登录账户。
随便点击一个作者进入他的主页。进入开发者界面(F12),Mac同时按command + option + I
。然后找到 Network(网络),选择Fetch/XHR后,随便点击或滑动视频触发请求。找到Request Headers(请求头)中的Cookie项,将其完整复制下来。如下图所示。
再往下划,还有个User-Agent,这之后的值也可复制备用,类似的如下:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
⚠️注意:ip没有永久黑名单,就算短时间内大量下载触发风控后,两个小时大概就会解封。(来源项目Issues)
配置文件准备
来到项目界面,在文件搜索框内输入config
,能够得到四类API配置文件,以及下面的总配置文件。将这五个文件下载下来。为了规避某些情况请大家自行去搜索,我不能放链接。
创建docker挂载路径,以威联通为例,我的具体路径为/share/Container/douyin_tiktok_api_data
,五个配置文件可以像我一样重命名后放进去。
编辑配置文件
威联通自带文件编辑器打开抖音相关的那个,将上一步获取的内容替换:cookie和User-Agent。
如注释所说,User-Agent不换也能用,咱们更换主要是为了防校验。
修改完毕后保存即可。
部署流程
以威联通NAS为例,采用Docker Compose的方式进行部署。
部署代码如下:
version: '3.8' # 最新版Docker Compose删除此行
services:
douyin_tiktok_api:
image: evil0ctal/douyin_tiktok_download_api
container_name: douyin_tiktok_api
ports:
- "8355:80" # 冒号左侧端口自行替换
# 冒号左侧映射文件目录自行修改
# 文件名注意要跟上文修改的对应起来
volumes:
- /share/Container/douyin_tiktok_api_data/config.douyin.yaml:/app/crawlers/douyin/web/config.yaml
- /share/Container/douyin_tiktok_api_data/config.tiktok_web.yaml:/app/crawlers/tiktok/web/config.yaml
- /share/Container/douyin_tiktok_api_data/config.tiktok_app.yaml:/app/crawlers/tiktok/app/config.yaml
- /share/Container/douyin_tiktok_api_data/config.bilibili.yaml:/app/crawlers/bilibili/web/config.yaml
- /share/Container/douyin_tiktok_api_data/config.global.yaml:/app/config.yaml
restart: always
使用展示
这里就简单介绍下使用方式。
部署完毕后浏览器输入NAS_IP:8355。初始界面如下,可选择功能。这里选取批量解析视频。左下角的小人是项目作者自己整的,大家感兴趣可以自己去玩玩。
可以看到提示,支持批量视频,但不支持批量主页。批量的粘贴方式就是一个视频链接/口令占位一行,输入一个按下回车再输入另一个,往复操作~
如上图,APP短网址和口令/网页版长网址/APP发现页网址都是支持的,可混合搭配。
我分享了了一个不可下载的进行解析,点击提交即可,解析后的界面如下,可以看到各种简略信息,可选择下载不同版本。详细解析内容可以点击「API链接-点击查看」,所有的数据在这里都能看到。
其他的照葫芦画瓢:获取对应平台的cookie-修改并保存配置文件-重启容器-粘贴地址-解析下载。
另外在访问地址后加上/docs
,也可到项目提供的docs,也都可以用,大家可以去试试。
最后
本期就介绍这么多,感谢观看。
本文完~
评论区