当下是很多人都在使用抖音视频,但是有个问题就是下载抖音视频,总是有抖音视频水印的问题,还是就是下载抖音图文的时候非常的不方便,于是到网上搜索,找到了这款可以部署的Docker程序-Douyin_TikTok_Download_API,作者部署也写的非常详细,当然,如果你是只是简单的使用一下,可以直接使用我部署好的,如果你有自己的域名,可以直接使用本教程,去部署自己的抖音下载。

微信截图_20240323142000

另外就是看到之前免费下载抖音视频的网站,当你下载几次,就会采用其他方法,验证码,或者加群,充钱等等的方式,所以推荐还是采用自建的方式去下载。

项目简介:

github地址: https://github.com/Evil0ctal/Douyin_TikTok_Download_API

目前该项目在github 已有5.8k star,如下是作者写的项目介绍:

「Douyin_TikTok_Download_API」是一个开箱即用的高性能异步抖音|TikTok|Bilibili数据爬取工具,支持API调用,在线批量解析及下载。

该项目是基于 PyWebIO,FastAPI,AIOHTTP,快速异步的抖音/TikTok/Bilibili数据爬取工具,并通过Web端实现在线批量解析以及下载无水印视频或图集,数据爬取API,iOS快捷指令无水印下载等功能。你可以自己部署或改造本项目实现更多功能,也可以在你的项目中直接调用scraper.py或安装现有的pip包作为解析库轻松爬取数据等…

一些简单的运用场景:

下载禁止下载的视频,进行数据分析,iOS无水印下载(搭配iOS自带的快捷指令APP 配合本项目API实现应用内下载或读取剪贴板下载)等…

项目部署

在 README 中,作者提供了两种部署方式。我们选择了基于 Docker 的部署方法,接下来将详细介绍如何使用 docker-compose 进行部署。

第一步:创建docker-compose.yml 文件

我们在服务器上创建一个部署目录tiktok,在tiktok下创建docker-compose.yml文件,内容如下:

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
version: "3.7"
services:
# bot
douyin_tiktok_download_api:
image: evil0ctal/douyin_tiktok_download_api
network_mode: host
container_name: douyin_tiktok_download_api
restart: always
volumes:
- ./config.ini:/app/config.ini
environment:
TZ: Asia/Shanghai
deploy:
resources:
limits:
cpus: '0.80'

第二步:创建config.ini 文件

项目的相关配置存储在 config.ini 文件中,因此当需要进行配置更改时,只需编辑 config.ini 文件即可。

在与 docker-compose.yml 同级的目录下创建 config.ini 文件,然后将项目中 config.ini 文件的内容复制到新创建的 config.ini 文件中。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# -*- encoding: utf-8 -*-
# @Author: https://github.com/Evil0ctal/
# @Time: 2021/11/06
# @Update: 2022/11/09
# @Function:
# 项目的配置文件/Config file of the project

[Scraper] # scraper.py
# 是否使用代理(如果部署在IP受限国家需要开启默认为False关闭,请自行收集代理,下面代理仅作为示例不保证可用性)
# Whether to use proxy (if deployed in a country with IP restrictions, it needs to be turned on by default, False is closed. Please collect proxies yourself. The following proxies are only for reference and do not guarantee availability)
Proxy_switch = False

# 是否根据不同协议(http/https)使用不同代理,设置为True时修改Http_proxy/Https_proxy这两个变量的值
# Whether to use different proxies for different protocols (http/https). When set to True, modify the values of the two variables Http_proxy/Https_proxy
Use_different_protocols = False

# http/https协议都使用以下代理(Use_different_protocols为False时生效)
# Both http/https protocols use the following proxy (effective when Use_different_protocols is False)
All = 45.167.124.5:9992

# http协议使用以下代理(Use_different_protocols为True时生效)
# The http protocol uses the following proxy (effective when Use_different_protocols is True)
Http_proxy = http://45.167.124.5:9992

# https协议使用以下代理(Use_different_protocols为True时生效)
# The https protocol uses the following proxy (effective when Use_different_protocols is True)
Https_proxy = https://45.167.124.5:9992

# 抖音cookies配置项
# odin_tt=xxx;sessionid_ss=xxx;ttwid=xxx;passport_csrf_token=xxx;msToken=xxx;
DouYinCookies =

[Web_API] # web_api.py
# API链接 如:http://127.0.0.1:2333 或 http://api.douyin.wtf (末尾不要留斜杠)
# API link, such as: http://127.0.0.1:2333 or http://api.douyin.wtf (no slash at the end)
Domain = http://1.15.248.154:8000/

# 限制API的请求次数/Limited API requests
Rate_Limit = 10/minute

# API默认运行端口/Default port of API
Port = 8000

# 默认下载目录/Dejavascript:;fault download directory
Download_Path = ./download

# 是否开启下载[tag = Download]功能(默认开启,关闭后无法下载)/Whether to enable the download [tag = Download] function (default open, closed after download)
Download_Switch = True

# 是否自动清理下载目录/Whether to automatically clean up the download directory
Download_Path_Clean_Switch = True

# 下载文件夹自动删除时间(单位:秒)/Download folder automatic deletion time (unit: seconds)
Download_Path_Clean_Timer = 3600

# 默认下载文件名前缀/Default download file name prefix
File_Name_Prefix = api.douyin.wtf_

# 是否记录API调用日志/Whether to record API call logs
Allow_Logs = True

# 快捷指令版本/Shortcut version
iOS_Shortcut_Version = 6.0

# 快捷指令Link(Chinese_Language)
iOS_Shortcut_Link = https://www.icloud.com/shortcuts/4465d514869e4ca585074d40328f3e0e

# Shortcut Link(English_Language)
iOS_Shortcut_Link_EN = https://www.icloud.com/shortcuts/58e3a2cbac784a6782f1031c6b1dd9f8

# 快捷指令更新时间/Shortcut update time
iOS_Shortcut_Update_Time = 2022/11/06

# 快捷指令更新记录/Shortcut update log
iOS_Shortcut_Update_Note = 重新适配https://api.douyin.wtf(API-V1 3.0.0版本)

# iOS shortcut update note
iOS_Shortcut_Update_Note_EN = Re-adapt https://api.douyin.wtf (API-V1 3.0.0 version)

[Web_APP] # web_app.py
# 网页默认运行端口/Web default running port
Port = 8019

# PyWebIO是否使用CDN来获取前端的静态资源(防止CDN被墙导致无法正常显示)
# Whether PyWebIO uses CDN to obtain static resources of the front end (to prevent CDN from being blocked and displayed normally)
PyWebIO_CDN = True

# 最大接受提交URL的数量/Maximum number of URLs accepted for submission
Max_Take_URLs = 200

# 是否记录错误日志/Whether to record error logs
Allow_Logs = True

# 网页标题
Web_Title = TikTok/抖音无水印在线解析下载

# Web Title English
Web_Title_English = Douyin/TikTok online parsing and download without watermark

# 网页描述
Web_Description = 在线批量解析TikTok/抖音视频和图片,支持无水印下载,官方数据接口,稳定,开源,免费,无广告。

# Web Description English
Web_Description_English = Online batch parsing of TikTok/Douyin videos and pictures, support for no watermark download, official data interface, stable, open source, free, no ads.

# 网页关键词/Keywords of the web page
Keywords = 抖音,tiktok,水印,无水印,no-watermark,抖音去水印,tiktok no watermark,在线,online,api,快捷指令,shortcut,下载,解析,parsing,tiktok api,抖音api,抖音去水印在线,tiktok去水印在线,downloader,下载器,free api,免费api

我门需要修改的地方:

  • DouYinCookies =

这一步需要从我们的抖音网页版获取信息,具体的获取方法如下:

1.打开抖音网页版,如果已经登录,请退出登录。接着,按下 F12 键打开开发者工具,点击 Network。

2.点击页面上的登录,然后通过扫码的方式完成抖音登录。登录成功后,我们可以看到Network如下的接口信息。

_20240102171855.png

3.复制请求头中的 Cookie 值,将其粘贴到 config.ini 文件中的 DouYinCookies 字段中。

如果在后期使用的时候Cookie过期了的话重新按此方法获取新的Cookie,重启服务即可。

修改这个地址为 我们部署的机器ip和api的port,末尾不要留斜杠

比如我们的地址是: Domain = http://192.168.10.106:8000

api的端口默认为8000,Web_APP的端口默认为80,如果本地端口有冲突的话可以自定义修改,修改之后在Domain = http://192.168.10.106:8000 保持一致就可以。

第三步:启动容器

在docker-compose.yml统计目录下执行如下命令启动容器:

1
docker-compose up -d 

查看容器启动日志

1
docker-compose logs -f

如果不出意外的话我们服务就已经启动了。

第四步:访问服务

我们在浏览器中访问ip:Web_APP的port,我们此处是内网部署,地址为 http://192.168.10.106:8019/

微信截图_20240323142000

我们如果在抖音中发现一些精美的图片,我们只需要复制链接到页面提交即可。

微信截图_20240323142316

如果我们需要的图片少的话右击另存为保存即可,比较多的话点击打包下载即可下载到本地。视频也是同样的操作,此处就就不做演示了。

使用教程:

这里主要是教在使用网页版的解决方案:视频下载就是点击视频链接-无水印,下载的文件名是.html,我们只要改成.MP4文件即可。

屏幕截图 2024-03-23 143327

屏幕截图 2024-03-23 143205

下载图文的话,就是复制链接,粘贴进去,然后使用chrome插件WebP 到 PNG 转换器下载抖音的图片。非常好用。

屏幕截图 2024-03-23 142807

工具网址:

本站免费解析地址:https://dy.tenmeng.com/

Chrome插件地址:https://chromewebstore.google.com/detail/%E5%B0%86-webp-%E8%BD%AC%E6%8D%A2%E4%B8%BA-png/egmjalgmmolinfenecmfaeognbjbiipi

(完)

欢迎关注

感谢您关注我们的网站!如果您喜欢美阅的内容,请关注美阅公众号,获取更多好内容。

img