From 3c460b2bcdf22d08ed9ce6d9be1c8bc416216dae Mon Sep 17 00:00:00 2001 From: jw <2419254437@qq.com> Date: Mon, 22 Aug 2022 15:39:08 +0800 Subject: [PATCH 01/15] add docker --- Dockerfile | 12 +++ README.md | 259 ++++++++++++++++++++++++++------------------- docker-compose.yml | 18 ++++ start.sh | 3 + 4 files changed, 183 insertions(+), 109 deletions(-) create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100644 start.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6de878b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,12 @@ + +FROM python:3.10.5-slim-buster +MAINTAINER jwstar (https://hub.docker.com/repository/docker/jwstar/douyin_tiktok_download_api) +RUN apt-get update && apt-get -y install gcc +COPY . /app +RUN pip3 --no-cache-dir install --user -r /app/requirements.txt +WORKDIR /app +# -u print打印出来 + +RUN chmod +x start.sh + +CMD ["./start.sh"] \ No newline at end of file diff --git a/README.md b/README.md index 020187c..9c844ca 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,8 @@ Language: [[English](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.en.md)] [[简体中文](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.md)] [[繁体中文](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.zh-TW.md)] -> Note: This API is applicable to Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at will, but please mark the original author. +> Note: This API is applicable to Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at +> will, but please mark the original author. > 注: 此API适用于Douyin和TikTok,Douyin为中国区域的TikTok,你可以随意分发或修改代码,但请标注原作者。 @@ -20,26 +21,31 @@ Language: [[English](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/bl ## 👻介绍 -> 出于稳定性的考虑,暂时关闭演示站的/video(返回mp4文件)和/music(返回mp3文件)这两个功能,同时结果页面的批量下载功能也暂时不可用,如有需求请自行部署,其他功能在演示站上仍正常使用,API服务器保证99%的时间正常运行,但不保证解析100%成功,如果解析失败请等一两分钟后重试。 +> 出于稳定性的考虑,暂时关闭演示站的/video(返回mp4文件)和/music(返回mp3文件) +> 这两个功能,同时结果页面的批量下载功能也暂时不可用,如有需求请自行部署,其他功能在演示站上仍正常使用,API服务器保证99%的时间正常运行,但不保证解析100%成功,如果解析失败请等一两分钟后重试。 🚀演示地址:[https://douyin.wtf/](https://douyin.wtf/) 🛰API演示:[https://api.douyin.wtf/](https://api.douyin.wtf/) -💾iOS快捷指令(中文): [点击获取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97) (更新于2022/07/18,快捷指令可自动检查更新,安装一次即可。) +💾iOS快捷指令(中文): [点击获取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97) ( +更新于2022/07/18,快捷指令可自动检查更新,安装一次即可。) -🌎iOS Shortcut(English): [Click to get](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d) (Updated on 2022/07/18, this shortcut will automatically check for updates, only need to install it once.) +🌎iOS Shortcut(English): [Click to get](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d) (Updated on +2022/07/18, this shortcut will automatically check for updates, only need to install it once.) 🗂快捷指令历史版本: [Shortcuts release](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/issues/53) 📦️Tiktok/抖音下载器(桌面应用):[TikDown](https://github.com/Tairraos/TikDown/) -本项目使用 [PyWebIO](https://github.com/pywebio/PyWebIO)、[Flask](https://github.com/pallets/flask),利用Python实现在线批量解析抖音的无水印视频/图集。 +本项目使用 [PyWebIO](https://github.com/pywebio/PyWebIO)、[Flask](https://github.com/pallets/flask) +,利用Python实现在线批量解析抖音的无水印视频/图集。 -可用于下载作者禁止下载的视频,或者进行数据爬取等等,同时可搭配[iOS自带的快捷指令APP](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)配合本项目API实现应用内下载。 - -快捷指令需要在抖音或TikTok的APP内,选择你想要保存的视频,点击分享按钮,然后找到 "抖音TikTok无水印下载" 这个选项,如遇到通知询问是否允许快捷指令访问xxxx (域名或服务器),需要点击允许才可以正常使用,下载成功的视频或图集会保存在一个专门的相册中以方便浏览。 +可用于下载作者禁止下载的视频,或者进行数据爬取等等,同时可搭配[iOS自带的快捷指令APP](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334) +配合本项目API实现应用内下载。 +快捷指令需要在抖音或TikTok的APP内,选择你想要保存的视频,点击分享按钮,然后找到 "抖音TikTok无水印下载" +这个选项,如遇到通知询问是否允许快捷指令访问xxxx (域名或服务器),需要点击允许才可以正常使用,下载成功的视频或图集会保存在一个专门的相册中以方便浏览。 ## 💡项目文件结构 @@ -120,13 +126,14 @@ python3 web_api.py # 将scraper.py拷贝至你的项目目录 # 在该项目中导入scraper.py from scraper import Scraper + api = Scraper() # 解析Douyin视频/图集 -douyin_data = api.douyin(input('在此输入抖音分享口令/链接:' )) +douyin_data = api.douyin(input('在此输入抖音分享口令/链接:')) # 返回字典 print(douyin_data) # 解析TikTok视频/图集 -tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:' )) +tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:')) # 返回字典 print(tiktok_data) ``` @@ -210,33 +217,33 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "analyze_time":"1.9043s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", - "nwm_video_url":"http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", - "original_url":"https://v.douyin.com/L4FJNR3/", - "platform":"douyin", - "status":"success", - "url_type":"video", - "video_author":"Real机智张", - "video_author_id":"Rea1yaoyue", - "video_author_signature":"", - "video_author_uid":"59840491348", - "video_aweme_id":"6918273131559881997", - "video_comment_count":"89145", - "video_create_time":"1610786002", - "video_digg_count":"2968195", - "video_hashtags":[ - "百万转场变身" - ], - "video_music":"https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", - "video_music_author":"梅尼耶", - "video_music_id":"6910889820861451000", - "video_music_mid":"6910889820861451021", - "video_music_title":"@梅尼耶创作的原声", - "video_play_count":"0", - "video_share_count":"74857", - "video_title":"骑白马的也可以是公主#百万转场变身", - "wm_video_url":"https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" + "analyze_time": "1.9043s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", + "nwm_video_url": "http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", + "original_url": "https://v.douyin.com/L4FJNR3/", + "platform": "douyin", + "status": "success", + "url_type": "video", + "video_author": "Real机智张", + "video_author_id": "Rea1yaoyue", + "video_author_signature": "", + "video_author_uid": "59840491348", + "video_aweme_id": "6918273131559881997", + "video_comment_count": "89145", + "video_create_time": "1610786002", + "video_digg_count": "2968195", + "video_hashtags": [ + "百万转场变身" + ], + "video_music": "https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", + "video_music_author": "梅尼耶", + "video_music_id": "6910889820861451000", + "video_music_mid": "6910889820861451021", + "video_music_title": "@梅尼耶创作的原声", + "video_play_count": "0", + "video_share_count": "74857", + "video_title": "骑白马的也可以是公主#百万转场变身", + "wm_video_url": "https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" } ``` @@ -244,40 +251,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "album_author":"治愈图集", - "album_author_id":"ZYTJ2002", - "album_author_signature":"取无水印图", - "album_author_uid":"449018054867063", - "album_aweme_id":"7015137063141920030", - "album_comment_count":"5436", - "album_create_time":"1633338878", - "album_digg_count":"193734", - "album_hashtags":[ - "晚霞", - "治愈系", - "落日余晖", - "日落🌄" - ], - "album_list":[ - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" - ], - "album_music":"https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", - "album_music_author":"魏同学", - "album_music_id":"6978805810365271000", - "album_music_mid":"6978805810365270791", - "album_music_title":"@魏同学创作的原声", - "album_play_count":"0", - "album_share_count":"30717", - "album_title":"“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", - "analyze_time":"1.0726s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", - "original_url":"https://v.douyin.com/Nb8jysN/", - "platform":"douyin", - "status":"success", - "url_type":"album" + "album_author": "治愈图集", + "album_author_id": "ZYTJ2002", + "album_author_signature": "取无水印图", + "album_author_uid": "449018054867063", + "album_aweme_id": "7015137063141920030", + "album_comment_count": "5436", + "album_create_time": "1633338878", + "album_digg_count": "193734", + "album_hashtags": [ + "晚霞", + "治愈系", + "落日余晖", + "日落🌄" + ], + "album_list": [ + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" + ], + "album_music": "https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", + "album_music_author": "魏同学", + "album_music_id": "6978805810365271000", + "album_music_mid": "6978805810365270791", + "album_music_title": "@魏同学创作的原声", + "album_play_count": "0", + "album_share_count": "30717", + "album_title": "“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", + "analyze_time": "1.0726s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", + "original_url": "https://v.douyin.com/Nb8jysN/", + "platform": "douyin", + "status": "success", + "url_type": "album" } ``` @@ -285,40 +292,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```JSON { - "analyze_time":"5.0863s", - "nwm_video_url":"https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", - "original_url":"https://www.tiktok.com/@oregonzoo/video/7080938094823738666", - "platform":"tiktok", - "status":"success", - "url_type":"video", - "video_author":"oregonzoo", - "video_author_SecId":"MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", - "video_author_diggCount":94, - "video_author_followerCount":1800000, - "video_author_followingCount":39, - "video_author_heartCount":29700000, - "video_author_id":"6699816060206171141", - "video_author_nickname":"Oregon Zoo", - "video_author_videoCount":264, - "video_aweme_id":"7080938094823738666", - "video_comment_count":61, - "video_create_time":"1648659375", - "video_digg_count":11800, - "video_hashtags":[ - "redpanda", - "boop", - "sunshine" - ], - "video_music":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_music_author":"Gilderoy Dauterive", - "video_music_id":"7075363884613356330", - "video_music_title":"Be the Sunshine", - "video_music_url":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_play_count":60100, - "video_ratio":"720p", - "video_share_count":298, - "video_title":"Moshu ✨ #redpanda #boop #sunshine", - "wm_video_url":"https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" + "analyze_time": "5.0863s", + "nwm_video_url": "https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", + "original_url": "https://www.tiktok.com/@oregonzoo/video/7080938094823738666", + "platform": "tiktok", + "status": "success", + "url_type": "video", + "video_author": "oregonzoo", + "video_author_SecId": "MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", + "video_author_diggCount": 94, + "video_author_followerCount": 1800000, + "video_author_followingCount": 39, + "video_author_heartCount": 29700000, + "video_author_id": "6699816060206171141", + "video_author_nickname": "Oregon Zoo", + "video_author_videoCount": 264, + "video_aweme_id": "7080938094823738666", + "video_comment_count": 61, + "video_create_time": "1648659375", + "video_digg_count": 11800, + "video_hashtags": [ + "redpanda", + "boop", + "sunshine" + ], + "video_music": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_music_author": "Gilderoy Dauterive", + "video_music_id": "7075363884613356330", + "video_music_title": "Be the Sunshine", + "video_music_url": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_play_count": 60100, + "video_ratio": "720p", + "video_share_count": 298, + "video_title": "Moshu ✨ #redpanda #boop #sunshine", + "wm_video_url": "https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" } ``` @@ -338,10 +345,10 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 --- -## 💾部署 +## 💾部署(方式一) > 注: -截图可能因更新问题与文字不符,一切请优先参照文字叙述。 +> 截图可能因更新问题与文字不符,一切请优先参照文字叙述。 > 最好将本项目部署至海外服务器(优先选择美国地区的服务器),否则可能会出现奇怪的问题。 @@ -349,7 +356,8 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 项目部署在国内服务器,而人在美国,点击结果页面链接报错403 ,目测与抖音CDN有关系。 项目部署在韩国服务器,解析TikTok报错 ,目测TikTok对某些地区或IP进行了限制。 -> 使用宝塔Linux面板进行部署(中文宝塔要强制绑定手机号了,很流氓且无法绕过,建议使用宝塔国际版,谷歌搜索关键字aapanel自行安装,部署步骤相似。) +> 使用宝塔Linux面板进行部署( +> 中文宝塔要强制绑定手机号了,很流氓且无法绕过,建议使用宝塔国际版,谷歌搜索关键字aapanel自行安装,部署步骤相似。) - 首先要去安全组开放5000和2333端口(Web默认5000,API默认2333,可以在文件config.ini中修改。) - 在宝塔应用商店内搜索python并安装项目管理器 (推荐使用1.9版本) @@ -373,10 +381,43 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 --- +## 💾部署(方式二 docker) + +- 安装docker + +```yaml +curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh &&systemctl enable docker&&systemctl start docker +``` + +- 留下config.int和docker-compose.yml文件即可 +- 运行命令,让容器在后台运行 + +```yaml +docker compose up -d +``` + +- 查看容器日志 + +```yaml +docker logs -f douyin_tiktok_download_api +``` + +- 删除容器 + +```yaml +docker rm -f douyin_tiktok_download_api +``` + +- 更新 + +```yaml +docker compose pull && docker compose down && docker compose up -d +``` + ## 🎉截图 > 注: -截图可能因更新问题与文字不符,一切请优先参照文字叙述。 +> 截图可能因更新问题与文字不符,一切请优先参照文字叙述。 - 主界面 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..cb51527 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,18 @@ +version: "3.7" + +services: + + # bot + douyintgbot: + image: jwstar/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' \ No newline at end of file diff --git a/start.sh b/start.sh new file mode 100644 index 0000000..d91f145 --- /dev/null +++ b/start.sh @@ -0,0 +1,3 @@ +#!/bin/sh +python web_zh.py & +python web_api.py \ No newline at end of file From 3bbdfbb17ee7888fb22a010e45d849fb47ea075a Mon Sep 17 00:00:00 2001 From: jw <2419254437@qq.com> Date: Mon, 22 Aug 2022 15:48:51 +0800 Subject: [PATCH 02/15] Create docker-image.yml --- .github/workflows/docker-image.yml | 39 ++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/docker-image.yml diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 0000000..44396fa --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,39 @@ +# docker-image.yml +name: Publish Docker image # workflow名称,可以在Github项目主页的【Actions】中看到所有的workflow + +on: # 配置触发workflow的事件 + push: + branches: # master分支有push时触发此workflow + - 'master' + tags: # tag更新时触发此workflow + - '*' + +jobs: # workflow中的job + + push_to_registry: # job的名字 + name: Push Docker image to Docker Hub + runs-on: ubuntu-latest # job运行的基础环境 + + steps: # 一个job由一个或多个step组成 + - name: Check out the repo + uses: actions/checkout@v2 # 官方的action,获取代码 + + - name: Log in to Docker Hub + uses: docker/login-action@v1 # 三方的action操作, 执行docker login + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} # 配置dockerhub的认证,在Github项目主页 【Settings】 -> 【Secrets】 添加对应变量 + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v3 # 抽取项目信息,主要是镜像的tag + with: + images: jhao104/proxy_pool + + - name: Build and push Docker image + uses: docker/build-push-action@v2 # docker build & push + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} \ No newline at end of file From 2070a3be0ef54080536b3ef0245f2ac0e1ce8a6c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 07:49:21 +0000 Subject: [PATCH 03/15] docs: Added README."en".md translation via https://github.com/dephraiim/translate-readme --- README.en.md | 262 +++++++++++++++++++++++++++++---------------------- 1 file changed, 151 insertions(+), 111 deletions(-) diff --git a/README.en.md b/README.en.md index 19f8bcb..37d6e8e 100644 --- a/README.en.md +++ b/README.en.md @@ -4,11 +4,12 @@ Language: \[[English](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.en.md)] \[[Simplified Chinese](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.md)] \[[traditional Chinese](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.zh-TW.md)] -> Note: This API is applicable to Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at will, but please mark the original author. +> Note: This API is applicable to Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at +> will, but please mark the original author. > Note: This API is suitable for Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at will, but please mark the original author. -Ladies and gentlemen, this site has been providing free API services since November 2021. The server cost of Azure is basically 15$ per month, so please sponsor me a little bit if you can (not just want to eat, the United States is too toothless) Expensive and no money•﹏•), so if you have the ability, you can sponsor my overseas server or transfer money to me, I will put the sponsorship list in the project readme file, and sincerely thank you for your recognition and support, really It's not because I want to have a meal, it's forced by life, and it's a helpless move. I hope you understand. +Ladies and gentlemen, this site has been providing free API services since November 2021. The server cost of Azure is basically 15$ per month, so please sponsor me a little bit if you can (not just want to eat, the United States is too toothless) Expensive and no money•﹏•), so if you have the ability, you can sponsor my overseas server or transfer money to me, I will put the sponsorship list in the project readme file, and sincerely thank you for your recognition and support, really It's not just a meal, it's forced by life, it's a helpless move, I hope you understand. The server problem has been solved (the wool is 4$ per month). The disadvantage is that it is a bit slow. The average response speed of the API is about 1s. If you think it is too slow, you can try to deploy it yourself. @@ -16,15 +17,18 @@ My WeChat: Evil0ctal ## 👻Introduction -> For the sake of stability, the two functions of /video (returns mp4 files) and /music (returns mp3 files) of the demo station are temporarily closed, and the batch download function of the result page is also temporarily unavailable. If you need it, please deploy it yourself , other functions can still be used normally on the demo site. The API server guarantees normal operation 99% of the time, but does not guarantee 100% successful parsing. If parsing fails, please wait a minute or two and try again. +> For stability reasons, temporarily close /video (returns mp4 files) and /music (returns mp3 files) of the demo station +> These two functions, and the batch download function of the result page are also temporarily unavailable. If you need it, please deploy it yourself. Other functions can still be used normally on the demo site. The API server guarantees 99% of the time to run normally, but does not guarantee 100% parsing. Success, if parsing fails please wait a minute or two and try again. 🚀Demo address: 🛰API demo: -💾iOS Shortcuts (Chinese):[Click to get](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)(Updated on 2022/07/18, the shortcut command can automatically check for updates, just install it once.) +💾iOS Shortcuts (Chinese):[Click to get](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( +Updated on 2022/07/18, the shortcut command can automatically check for updates, and you can install it once. ) -🌎iOS Shortcut(English):[Click to get](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(Updated on 2022/07/18, this shortcut will automatically check for updates, only need to install it once.) +🌎iOS Shortcut(English):[Click to get](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(Updated on +2022/07/18, this shortcut will automatically check for updates, only need to install it once.) 🗂 Shortcut History Version:[Shortcuts release](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/issues/53) @@ -32,9 +36,10 @@ My WeChat: Evil0ctal This project uses[PyWebIO](https://github.com/pywebio/PyWebIO)、[Flask](https://github.com/pallets/flask), using Python to implement online batch parsing of Douyin's watermark-free video/atlas. -It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)Cooperate with the API of this project to realize in-app download. +It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)Cooperate with this project API to realize in-app download. -The shortcut command needs to be in the Douyin or TikTok app, select the video you want to save, click the share button, and then find the option "Douyin TikTok without watermark download", if you encounter a notification asking whether to allow the shortcut command to access xxxx (domain name) or server), you need to click Allow to use it normally, and the successfully downloaded video or gallery will be saved in a special album for easy browsing. +The shortcut command needs to be in the Douyin or TikTok app, select the video you want to save, click the share button, and then find "Douyin TikTok No Watermark Download" +This option, if you encounter a notification asking whether to allow shortcut commands to access xxxx (domain name or server), you need to click Allow before it can be used normally. The successfully downloaded video or gallery will be saved in a special album for easy browsing. ## 💡Project file structure @@ -113,13 +118,14 @@ python3 web_api.py # 将scraper.py拷贝至你的项目目录 # 在该项目中导入scraper.py from scraper import Scraper + api = Scraper() # 解析Douyin视频/图集 -douyin_data = api.douyin(input('在此输入抖音分享口令/链接:' )) +douyin_data = api.douyin(input('在此输入抖音分享口令/链接:')) # 返回字典 print(douyin_data) # 解析TikTok视频/图集 -tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:' )) +tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:')) # 返回字典 print(tiktok_data) ``` @@ -175,7 +181,7 @@ https://vm.tiktok.com/TTPdkQvKjP/ https://www.tiktok.com/@tvamii/video/7045537727743380782 ``` -- Douyin/TikTok bulk URLs (no need to separate them) +- 抖音/TikTok批量网址(无需使用符合隔开) ```text 例子: @@ -203,33 +209,33 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "analyze_time":"1.9043s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", - "nwm_video_url":"http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", - "original_url":"https://v.douyin.com/L4FJNR3/", - "platform":"douyin", - "status":"success", - "url_type":"video", - "video_author":"Real机智张", - "video_author_id":"Rea1yaoyue", - "video_author_signature":"", - "video_author_uid":"59840491348", - "video_aweme_id":"6918273131559881997", - "video_comment_count":"89145", - "video_create_time":"1610786002", - "video_digg_count":"2968195", - "video_hashtags":[ - "百万转场变身" - ], - "video_music":"https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", - "video_music_author":"梅尼耶", - "video_music_id":"6910889820861451000", - "video_music_mid":"6910889820861451021", - "video_music_title":"@梅尼耶创作的原声", - "video_play_count":"0", - "video_share_count":"74857", - "video_title":"骑白马的也可以是公主#百万转场变身", - "wm_video_url":"https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" + "analyze_time": "1.9043s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", + "nwm_video_url": "http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", + "original_url": "https://v.douyin.com/L4FJNR3/", + "platform": "douyin", + "status": "success", + "url_type": "video", + "video_author": "Real机智张", + "video_author_id": "Rea1yaoyue", + "video_author_signature": "", + "video_author_uid": "59840491348", + "video_aweme_id": "6918273131559881997", + "video_comment_count": "89145", + "video_create_time": "1610786002", + "video_digg_count": "2968195", + "video_hashtags": [ + "百万转场变身" + ], + "video_music": "https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", + "video_music_author": "梅尼耶", + "video_music_id": "6910889820861451000", + "video_music_mid": "6910889820861451021", + "video_music_title": "@梅尼耶创作的原声", + "video_play_count": "0", + "video_share_count": "74857", + "video_title": "骑白马的也可以是公主#百万转场变身", + "wm_video_url": "https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" } ``` @@ -237,40 +243,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "album_author":"治愈图集", - "album_author_id":"ZYTJ2002", - "album_author_signature":"取无水印图", - "album_author_uid":"449018054867063", - "album_aweme_id":"7015137063141920030", - "album_comment_count":"5436", - "album_create_time":"1633338878", - "album_digg_count":"193734", - "album_hashtags":[ - "晚霞", - "治愈系", - "落日余晖", - "日落🌄" - ], - "album_list":[ - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" - ], - "album_music":"https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", - "album_music_author":"魏同学", - "album_music_id":"6978805810365271000", - "album_music_mid":"6978805810365270791", - "album_music_title":"@魏同学创作的原声", - "album_play_count":"0", - "album_share_count":"30717", - "album_title":"“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", - "analyze_time":"1.0726s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", - "original_url":"https://v.douyin.com/Nb8jysN/", - "platform":"douyin", - "status":"success", - "url_type":"album" + "album_author": "治愈图集", + "album_author_id": "ZYTJ2002", + "album_author_signature": "取无水印图", + "album_author_uid": "449018054867063", + "album_aweme_id": "7015137063141920030", + "album_comment_count": "5436", + "album_create_time": "1633338878", + "album_digg_count": "193734", + "album_hashtags": [ + "晚霞", + "治愈系", + "落日余晖", + "日落🌄" + ], + "album_list": [ + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" + ], + "album_music": "https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", + "album_music_author": "魏同学", + "album_music_id": "6978805810365271000", + "album_music_mid": "6978805810365270791", + "album_music_title": "@魏同学创作的原声", + "album_play_count": "0", + "album_share_count": "30717", + "album_title": "“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", + "analyze_time": "1.0726s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", + "original_url": "https://v.douyin.com/Nb8jysN/", + "platform": "douyin", + "status": "success", + "url_type": "album" } ``` @@ -278,40 +284,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```JSON { - "analyze_time":"5.0863s", - "nwm_video_url":"https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", - "original_url":"https://www.tiktok.com/@oregonzoo/video/7080938094823738666", - "platform":"tiktok", - "status":"success", - "url_type":"video", - "video_author":"oregonzoo", - "video_author_SecId":"MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", - "video_author_diggCount":94, - "video_author_followerCount":1800000, - "video_author_followingCount":39, - "video_author_heartCount":29700000, - "video_author_id":"6699816060206171141", - "video_author_nickname":"Oregon Zoo", - "video_author_videoCount":264, - "video_aweme_id":"7080938094823738666", - "video_comment_count":61, - "video_create_time":"1648659375", - "video_digg_count":11800, - "video_hashtags":[ - "redpanda", - "boop", - "sunshine" - ], - "video_music":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_music_author":"Gilderoy Dauterive", - "video_music_id":"7075363884613356330", - "video_music_title":"Be the Sunshine", - "video_music_url":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_play_count":60100, - "video_ratio":"720p", - "video_share_count":298, - "video_title":"Moshu ✨ #redpanda #boop #sunshine", - "wm_video_url":"https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" + "analyze_time": "5.0863s", + "nwm_video_url": "https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", + "original_url": "https://www.tiktok.com/@oregonzoo/video/7080938094823738666", + "platform": "tiktok", + "status": "success", + "url_type": "video", + "video_author": "oregonzoo", + "video_author_SecId": "MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", + "video_author_diggCount": 94, + "video_author_followerCount": 1800000, + "video_author_followingCount": 39, + "video_author_heartCount": 29700000, + "video_author_id": "6699816060206171141", + "video_author_nickname": "Oregon Zoo", + "video_author_videoCount": 264, + "video_aweme_id": "7080938094823738666", + "video_comment_count": 61, + "video_create_time": "1648659375", + "video_digg_count": 11800, + "video_hashtags": [ + "redpanda", + "boop", + "sunshine" + ], + "video_music": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_music_author": "Gilderoy Dauterive", + "video_music_id": "7075363884613356330", + "video_music_title": "Be the Sunshine", + "video_music_url": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_play_count": 60100, + "video_ratio": "720p", + "video_share_count": 298, + "video_title": "Moshu ✨ #redpanda #boop #sunshine", + "wm_video_url": "https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" } ``` @@ -331,10 +337,10 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 * * * -## 💾Deploy +## 💾Deployment (Method 1) > Note: -> The screenshots may not match the text due to update problems. Please refer to the text description first. +> The screenshots may not match the text due to update problems, please refer to the text description first. > It is best to deploy this project to an overseas server (preferably a server in the United States), otherwise strange problems may occur. @@ -342,10 +348,11 @@ example: The project is deployed on a domestic server, and the person is in the United States. Clicking the link on the result page reports an error 403, which is visually related to the Douyin CDN. The project is deployed on a South Korean server, parsing TikTok errors, and visually TikTok restricts certain regions or IPs. -> Use the pagoda Linux panel for deployment (Chinese pagoda must be bound to the mobile phone number, which is very rogue and cannot be bypassed. It is recommended to use the pagoda international version, Google search keyword aapanel to install it yourself, and the deployment steps are similar.) +> Deploy using the Pagoda Linux panel ( +> The Chinese pagoda is going to be bound to a mobile phone number, which is very rogue and cannot be bypassed. It is recommended to use the international version of the pagoda. Google search for the keyword aapanel to install it yourself, and the deployment steps are similar. ) -- First, go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API, which can be modified in the file config.ini.) -- Search for python in the pagoda app store and install the project manager (version 1.9 is recommended) +- First go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API default, which can be modified in the file config.ini.) +- Search for python in the Pagoda app store and install the project manager (version 1.9 is recommended) ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_1.png) @@ -366,10 +373,43 @@ The project is deployed on a South Korean server, parsing TikTok errors, and vis * * * +## 💾Deployment (method 2 docker) + +- install docker + +```yaml +curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh &&systemctl enable docker&&systemctl start docker +``` + +- Just leave the config.int and docker-compose.yml files +- Run the command to keep the container running in the background + +```yaml +docker compose up -d +``` + +- View container logs + +```yaml +docker logs -f douyin_tiktok_download_api +``` + +- delete container + +```yaml +docker rm -f douyin_tiktok_download_api +``` + +- renew + +```yaml +docker compose pull && docker compose down && docker compose up -d +``` + ## 🎉 Screenshot > Note: -> The screenshots may not match the text due to update problems. Please refer to the text description first. +> The screenshots may not match the text due to update problems, please refer to the text description first. - Main interface From 19087b4b80b2749700bf9b0d7702061cda49a359 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 07:49:28 +0000 Subject: [PATCH 04/15] docs: Added README."zh-TW".md translation via https://github.com/dephraiim/translate-readme --- README.zh-TW.md | 248 ++++++++++++++++++++++++++++-------------------- 1 file changed, 144 insertions(+), 104 deletions(-) diff --git a/README.zh-TW.md b/README.zh-TW.md index 0239471..30165d3 100644 --- a/README.zh-TW.md +++ b/README.zh-TW.md @@ -4,7 +4,8 @@ 語: \[[英語](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.en.md)] \[[簡體中文](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.md)] \[[繁體中文](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/blob/main/README.zh-TW.md)] -> 注:此API適用於抖音和抖音。抖音是中國的TikTok。您可以隨意分發或修改代碼,但請註明原作者。 +> 注:此API適用於抖音和抖音。抖音是中國的TikTok。您可以在以下位置分發或修改代碼 +> 會,但請註明原作者。 > 注: 此API適用於Douyin和TikTok,Douyin為中國區域的TikTok,你可以隨意分發或修改代碼,但請標註原作者。 @@ -16,15 +17,18 @@ ## 👻介紹 -> 出於穩定性的考慮,暫時關閉演示站的/video(返回mp4文件)和/music(返回mp3文件)這兩個功能,同時結果頁面的批量下載功能也暫時不可用,如有需求請自行部署,其他功能在演示站上仍正常使用,API服務器保證99%的時間正常運行,但不保證解析100%成功,如果解析失敗請等一兩分鐘後重試。 +> 出於穩定性的考慮,暫時關閉演示站的/video(返回mp4文件)和/music(返回mp3文件) +> 這兩個功能,同時結果頁面的批量下載功能也暫時不可用,如有需求請自行部署,其他功能在演示站上仍正常使用,API服務器保證99%的時間正常運行,但不保證解析100%成功,如果解析失敗請等一兩分鐘後重試。 🚀演示地址: 🛰API演示: -💾iOS快捷指令(中文):[點擊獲取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)(更新於2022/07/18,快捷指令可自動檢查更新,安裝一次即可。) +💾iOS快捷指令(中文):[點擊獲取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( +更新於2022/07/18,快捷指令可自動檢查更新,安裝一次即可。 ) -🌎iOS快捷方式(英文):[點擊獲取](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(2022/07/18更新,這個快捷方式會自動檢查更新,只需要安裝一次。) +🌎iOS快捷方式(英文):[點擊獲取](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(更新於 +2022/07/18,這個快捷方式會自動檢查更新,只需要安裝一次。) 🗂快捷指令歷史版本:[快捷方式發布](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/issues/53) @@ -34,7 +38,8 @@ 可用於下載作者禁止下載的視頻,或者進行數據爬取等等,同時可搭配[iOS自帶的快捷指令APP](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)配合本項目API實現應用內下載。 -快捷指令需要在抖音或TikTok的APP內,選擇你想要保存的視頻,點擊分享按鈕,然後找到 "抖音TikTok無水印下載" 這個選項,如遇到通知詢問是否允許快捷指令訪問xxxx (域名或服務器),需要點擊允許才可以正常使用,下載成功的視頻或圖集會保存在一個專門的相冊中以方便瀏覽。 +快捷指令需要在抖音或TikTok的APP內,選擇你想要保存的視頻,點擊分享按鈕,然後找到 "抖音TikTok無水印下載" +這個選項,如遇到通知詢問是否允許快捷指令訪問xxxx (域名或服務器),需要點擊允許才可以正常使用,下載成功的視頻或圖集會保存在一個專門的相冊中以方便瀏覽。 ## 💡項目文件結構 @@ -113,13 +118,14 @@ python3 web_api.py # 将scraper.py拷贝至你的项目目录 # 在该项目中导入scraper.py from scraper import Scraper + api = Scraper() # 解析Douyin视频/图集 -douyin_data = api.douyin(input('在此输入抖音分享口令/链接:' )) +douyin_data = api.douyin(input('在此输入抖音分享口令/链接:')) # 返回字典 print(douyin_data) # 解析TikTok视频/图集 -tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:' )) +tiktok_data = api.tiktok(input('在此输入TikTok分享口令/链接:')) # 返回字典 print(tiktok_data) ``` @@ -203,33 +209,33 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "analyze_time":"1.9043s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", - "nwm_video_url":"http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", - "original_url":"https://v.douyin.com/L4FJNR3/", - "platform":"douyin", - "status":"success", - "url_type":"video", - "video_author":"Real机智张", - "video_author_id":"Rea1yaoyue", - "video_author_signature":"", - "video_author_uid":"59840491348", - "video_aweme_id":"6918273131559881997", - "video_comment_count":"89145", - "video_create_time":"1610786002", - "video_digg_count":"2968195", - "video_hashtags":[ - "百万转场变身" - ], - "video_music":"https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", - "video_music_author":"梅尼耶", - "video_music_id":"6910889820861451000", - "video_music_mid":"6910889820861451021", - "video_music_title":"@梅尼耶创作的原声", - "video_play_count":"0", - "video_share_count":"74857", - "video_title":"骑白马的也可以是公主#百万转场变身", - "wm_video_url":"https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" + "analyze_time": "1.9043s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=6918273131559881997", + "nwm_video_url": "http://v3-dy-o.zjcdn.com/23f0dec312ede563bef881af9a88bdc7/624dd965/video/tos/cn/tos-cn-ve-15/eccedcf4386948f5b5a1f0bcfb3dcde9/?a=1128&br=2537&bt=2537&cd=0%7C0%7C0%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=sYGC~3E7nz7Th1PZSDXq&l=202204070118030102080650132A21E31F&lr=&mime_type=video_mp4&net=0&pl=0&qs=0&rc=M3hleDRsODlkMzMzaGkzM0ApODpmNWc4ODs5N2lmNzg5aWcpaGRqbGRoaGRmLi4ybnBrbjYuYC0tYy0wc3MtYmJjNTM2NjAtNDFjMzJgOmNwb2wrbStqdDo%3D&vl=&vr=", + "original_url": "https://v.douyin.com/L4FJNR3/", + "platform": "douyin", + "status": "success", + "url_type": "video", + "video_author": "Real机智张", + "video_author_id": "Rea1yaoyue", + "video_author_signature": "", + "video_author_uid": "59840491348", + "video_aweme_id": "6918273131559881997", + "video_comment_count": "89145", + "video_create_time": "1610786002", + "video_digg_count": "2968195", + "video_hashtags": [ + "百万转场变身" + ], + "video_music": "https://sf3-cdn-tos.douyinstatic.com/obj/ies-music/6910889805266504461.mp3", + "video_music_author": "梅尼耶", + "video_music_id": "6910889820861451000", + "video_music_mid": "6910889820861451021", + "video_music_title": "@梅尼耶创作的原声", + "video_play_count": "0", + "video_share_count": "74857", + "video_title": "骑白马的也可以是公主#百万转场变身", + "wm_video_url": "https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0300ffe0000c01a96q5nis1qu5b1u10&ratio=720p&line=0" } ``` @@ -237,40 +243,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```json { - "album_author":"治愈图集", - "album_author_id":"ZYTJ2002", - "album_author_signature":"取无水印图", - "album_author_uid":"449018054867063", - "album_aweme_id":"7015137063141920030", - "album_comment_count":"5436", - "album_create_time":"1633338878", - "album_digg_count":"193734", - "album_hashtags":[ - "晚霞", - "治愈系", - "落日余晖", - "日落🌄" - ], - "album_list":[ - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", - "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" - ], - "album_music":"https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", - "album_music_author":"魏同学", - "album_music_id":"6978805810365271000", - "album_music_mid":"6978805810365270791", - "album_music_title":"@魏同学创作的原声", - "album_play_count":"0", - "album_share_count":"30717", - "album_title":"“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", - "analyze_time":"1.0726s", - "api_url":"https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", - "original_url":"https://v.douyin.com/Nb8jysN/", - "platform":"douyin", - "status":"success", - "url_type":"album" + "album_author": "治愈图集", + "album_author_id": "ZYTJ2002", + "album_author_signature": "取无水印图", + "album_author_uid": "449018054867063", + "album_aweme_id": "7015137063141920030", + "album_comment_count": "5436", + "album_create_time": "1633338878", + "album_digg_count": "193734", + "album_hashtags": [ + "晚霞", + "治愈系", + "落日余晖", + "日落🌄" + ], + "album_list": [ + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5223757a7bef4f8480cd25d0fa2d2d94~noop.webp?x-expires=1651856400&x-signature=K1VjJdWTHCAaYSz14y6NumjjtfI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/d99467672da840908acccf2d2b4b7ef7~noop.webp?x-expires=1651856400&x-signature=ncBb8Tt7z4PmpUyiCNr%2FJYnwRSA%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/5c2562210b1a4d4c99d6d4dbd2f23f2b~noop.webp?x-expires=1651856400&x-signature=Rsmplb53IKfvKd3mmIb4iQNhlIE%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47", + "https://p26-sign.douyinpic.com/tos-cn-i-0813/9bb74c0c6aff4217bd1491a077b2c817~noop.webp?x-expires=1651856400&x-signature=BLRyHoKP0ybIci57yneOca62dxI%3D&from=4257465056&s=PackSourceEnum_DOUYIN_REFLOW&se=false&biz_tag=aweme_images&l=202204070120460102101050412A210A47" + ], + "album_music": "https://sf6-cdn-tos.douyinstatic.com/obj/ies-music/6978805801733442341.mp3", + "album_music_author": "魏同学", + "album_music_id": "6978805810365271000", + "album_music_mid": "6978805810365270791", + "album_music_title": "@魏同学创作的原声", + "album_play_count": "0", + "album_share_count": "30717", + "album_title": "“山海自有归期 风雨自有相逢 意难平终将和解 万事终将如意”#晚霞 #治愈系 #落日余晖 #日落🌄", + "analyze_time": "1.0726s", + "api_url": "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7015137063141920030", + "original_url": "https://v.douyin.com/Nb8jysN/", + "platform": "douyin", + "status": "success", + "url_type": "album" } ``` @@ -278,40 +284,40 @@ http://localhost(服务器IP):2333/api?url="复制的(抖音/TikTok)口令/链 ```JSON { - "analyze_time":"5.0863s", - "nwm_video_url":"https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", - "original_url":"https://www.tiktok.com/@oregonzoo/video/7080938094823738666", - "platform":"tiktok", - "status":"success", - "url_type":"video", - "video_author":"oregonzoo", - "video_author_SecId":"MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", - "video_author_diggCount":94, - "video_author_followerCount":1800000, - "video_author_followingCount":39, - "video_author_heartCount":29700000, - "video_author_id":"6699816060206171141", - "video_author_nickname":"Oregon Zoo", - "video_author_videoCount":264, - "video_aweme_id":"7080938094823738666", - "video_comment_count":61, - "video_create_time":"1648659375", - "video_digg_count":11800, - "video_hashtags":[ - "redpanda", - "boop", - "sunshine" - ], - "video_music":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_music_author":"Gilderoy Dauterive", - "video_music_id":"7075363884613356330", - "video_music_title":"Be the Sunshine", - "video_music_url":"https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", - "video_play_count":60100, - "video_ratio":"720p", - "video_share_count":298, - "video_title":"Moshu ✨ #redpanda #boop #sunshine", - "wm_video_url":"https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" + "analyze_time": "5.0863s", + "nwm_video_url": "https://v19.tiktokcdn-us.com/cfa357dadd8f913f013a6d0b0dca293f/624e20fa/video/tos/useast5/tos-useast5-ve-0068c003-tx/3296231486014755a1b81aa70c349a53/?a=1233&br=6498&bt=3249&cd=0%7C0%7C0%7C3&ch=0&cr=3&cs=0&cv=1&dr=0&ds=6&er=&ft=bY1KJnB4TJBS6BMy-L1iVKP&l=20220406172333010113135214232FAB56&lr=all&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApNjY6ZTtkOzxpN2Q3PDo5OmdgZ2BtcjQwai9gLS1kMS9zczJhLTEzYjEuMTJeXzQyLmM6Yw%3D%3D&vl=&vr=", + "original_url": "https://www.tiktok.com/@oregonzoo/video/7080938094823738666", + "platform": "tiktok", + "status": "success", + "url_type": "video", + "video_author": "oregonzoo", + "video_author_SecId": "MS4wLjABAAAArWNQ8-AZN6CxWOkqdeWsMBUuLDmJt8TWUAk0S4aWDW5V5EoqRbuczhaLnxJHCGob", + "video_author_diggCount": 94, + "video_author_followerCount": 1800000, + "video_author_followingCount": 39, + "video_author_heartCount": 29700000, + "video_author_id": "6699816060206171141", + "video_author_nickname": "Oregon Zoo", + "video_author_videoCount": 264, + "video_aweme_id": "7080938094823738666", + "video_comment_count": 61, + "video_create_time": "1648659375", + "video_digg_count": 11800, + "video_hashtags": [ + "redpanda", + "boop", + "sunshine" + ], + "video_music": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_music_author": "Gilderoy Dauterive", + "video_music_id": "7075363884613356330", + "video_music_title": "Be the Sunshine", + "video_music_url": "https://sf16.tiktokcdn-us.com/obj/ies-music-tx/7075363935741856558.mp3", + "video_play_count": 60100, + "video_ratio": "720p", + "video_share_count": 298, + "video_title": "Moshu ✨ #redpanda #boop #sunshine", + "wm_video_url": "https://v16m-webapp.tiktokcdn-us.com/0394b9183a5852d4392a7e804bf78c55/624e20f6/video/tos/useast5/tos-useast5-ve-0068c001-tx/fc63ae232e70466398b55ccf97eb3c67/?a=1988&br=6468&bt=3234&cd=0%7C0%7C1%7C0&ch=0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&ft=XY53A3E7nz7Th-pZSDXq&l=202204061723290101131351171341B9BB&lr=tiktok_m&mime_type=video_mp4&net=0&pl=0&qs=0&rc=MzpsaGY6Zjo7PDMzZzczNEApOjo4aDMzZmRlN2loOWk6ZWdgZ2BtcjQwai9gLS1kMS9zczBhNGA0LTIwNjNiYDQ2YmE6Yw%3D%3D&vl=&vr=" } ``` @@ -331,7 +337,7 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 * * * -## 💾部署 +## 💾部署(方式一) > 注: > 截圖可能因更新問題與文字不符,一切請優先參照文字敘述。 @@ -342,7 +348,8 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 項目部署在國內服務器,而人在美國,點擊結果頁面鏈接報錯403 ,目測與抖音CDN有關係。 項目部署在韓國服務器,解析TikTok報錯 ,目測TikTok對某些地區或IP進行了限制。 -> 使用寶塔Linux面板進行部署(中文寶塔要強制綁定手機號了,很流氓且無法繞過,建議使用寶塔國際版,谷歌搜索關鍵字aapanel自行安裝,部署步驟相似。) +> 使用寶塔Linux面板進行部署( +> 中文寶塔要強制綁定手機號了,很流氓且無法繞過,建議使用寶塔國際版,谷歌搜索關鍵字aapanel自行安裝,部署步驟相似。 ) - 首先要去安全組開放5000和2333端口(Web默認5000,API默認2333,可以在文件config.ini中修改。) - 在寶塔應用商店內搜索python並安裝項目管理器 (推薦使用1.9版本) @@ -366,6 +373,39 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 * * * +## 💾部署(方式二 docker) + +- 安裝docker + +```yaml +curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh &&systemctl enable docker&&systemctl start docker +``` + +- 留下config.int和docker-compose.yml文件即可 +- 運行命令,讓容器在後台運行 + +```yaml +docker compose up -d +``` + +- 查看容器日誌 + +```yaml +docker logs -f douyin_tiktok_download_api +``` + +- 刪除容器 + +```yaml +docker rm -f douyin_tiktok_download_api +``` + +- 更新 + +```yaml +docker compose pull && docker compose down && docker compose up -d +``` + ## 🎉截圖 > 注: From d76a5039f7659cfbffd84ff9e96fbb8108c48bfd Mon Sep 17 00:00:00 2001 From: jw <2419254437@qq.com> Date: Mon, 22 Aug 2022 15:58:18 +0800 Subject: [PATCH 05/15] Update docker-image.yml --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 44396fa..c7a3dde 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -28,7 +28,7 @@ jobs: # workflow中的job id: meta uses: docker/metadata-action@v3 # 抽取项目信息,主要是镜像的tag with: - images: jhao104/proxy_pool + images: jwstar/douyin_tiktok_download_api - name: Build and push Docker image uses: docker/build-push-action@v2 # docker build & push From 7cd7d6150b8d5ec13e3dcecd422c06d85030221a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 07:59:09 +0000 Subject: [PATCH 06/15] docs: Added README."en".md translation via https://github.com/dephraiim/translate-readme --- README.en.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.en.md b/README.en.md index 37d6e8e..7ecae9e 100644 --- a/README.en.md +++ b/README.en.md @@ -181,7 +181,7 @@ https://vm.tiktok.com/TTPdkQvKjP/ https://www.tiktok.com/@tvamii/video/7045537727743380782 ``` -- 抖音/TikTok批量网址(无需使用符合隔开) +- Douyin/TikTok bulk URLs (no need to separate them) ```text 例子: From 63afa7a1e2dc1499e0c04d9a7f2b0aa59586a8d9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 07:59:15 +0000 Subject: [PATCH 07/15] docs: Added README."zh-TW".md translation via https://github.com/dephraiim/translate-readme --- README.zh-TW.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.zh-TW.md b/README.zh-TW.md index 30165d3..8208839 100644 --- a/README.zh-TW.md +++ b/README.zh-TW.md @@ -24,7 +24,7 @@ 🛰API演示: -💾iOS快捷指令(中文):[點擊獲取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( +💾iOS快捷指令(中文):[点击获取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( 更新於2022/07/18,快捷指令可自動檢查更新,安裝一次即可。 ) 🌎iOS快捷方式(英文):[點擊獲取](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(更新於 From abc71bb2d4197be1ead8379e2d5eedeb7a6c646b Mon Sep 17 00:00:00 2001 From: 17_bzhzq <2419254437@qq.com> Date: Mon, 22 Aug 2022 16:03:28 +0800 Subject: [PATCH 08/15] Update docker-image.yml --- .github/workflows/docker-image.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index c7a3dde..8da15ce 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -7,6 +7,17 @@ on: # 配置触发workflow的事件 - 'master' tags: # tag更新时触发此workflow - '*' + workflow_dispatch: + inputs: + name: + description: 'Person to greet' + required: true + default: 'Mona the Octocat' + home: + description: 'location' + required: false + default: 'The Octoverse' + jobs: # workflow中的job @@ -36,4 +47,4 @@ jobs: # workflow中的job context: . push: true tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} \ No newline at end of file + labels: ${{ steps.meta.outputs.labels }} From ca38335acce9afbdbc5d43653c2d728a498e548d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 08:03:50 +0000 Subject: [PATCH 09/15] docs: Added README."en".md translation via https://github.com/dephraiim/translate-readme --- README.en.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.en.md b/README.en.md index 7ecae9e..736f7bf 100644 --- a/README.en.md +++ b/README.en.md @@ -167,7 +167,7 @@ https://www.douyin.com/video/6914948781100338440 https://www.douyin.com/discover?modal_id=7069543727328398622 ``` -- TikTok Short URL (In-App Copy) +- TikTok URL Shortening (In-App Copy) ```text 例子: @@ -351,7 +351,7 @@ The project is deployed on a South Korean server, parsing TikTok errors, and vis > Deploy using the Pagoda Linux panel ( > The Chinese pagoda is going to be bound to a mobile phone number, which is very rogue and cannot be bypassed. It is recommended to use the international version of the pagoda. Google search for the keyword aapanel to install it yourself, and the deployment steps are similar. ) -- First go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API default, which can be modified in the file config.ini.) +- First, go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API, which can be modified in the file config.ini.) - Search for python in the Pagoda app store and install the project manager (version 1.9 is recommended) ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_1.png) @@ -382,7 +382,7 @@ curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh &&systemctl enable ``` - Just leave the config.int and docker-compose.yml files -- Run the command to keep the container running in the background +- Run the command to let the container run in the background ```yaml docker compose up -d From d40aeadddc11f9b8c0006511823f1fa35b4a0ed2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 08:03:56 +0000 Subject: [PATCH 10/15] docs: Added README."zh-TW".md translation via https://github.com/dephraiim/translate-readme --- README.zh-TW.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.zh-TW.md b/README.zh-TW.md index 8208839..a8f0acc 100644 --- a/README.zh-TW.md +++ b/README.zh-TW.md @@ -24,7 +24,7 @@ 🛰API演示: -💾iOS快捷指令(中文):[点击获取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( +💾iOS快捷指令(中文):[點擊獲取](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( 更新於2022/07/18,快捷指令可自動檢查更新,安裝一次即可。 ) 🌎iOS快捷方式(英文):[點擊獲取](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(更新於 @@ -367,7 +367,7 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 - API啟動文件選擇`web_api.py` - 勾選安裝模塊依賴 - 開機啟動隨意 -- 如果寶塔運行了`Nginx`等其他服務時請自行判斷端口是否被佔用,運行端口可在文件config.ini中修改。 +- 如果寶塔運行了`Nginx`等其他服务时请自行判断端口是否被占用,运行端口可在文件config.ini中修改。 ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_2.png) From c150b00f5d469fa671ff90990e239b8af85957c6 Mon Sep 17 00:00:00 2001 From: jw <2419254437@qq.com> Date: Mon, 22 Aug 2022 16:21:07 +0800 Subject: [PATCH 11/15] Update docker-image.yml --- .github/workflows/docker-image.yml | 71 ++++++++++++++++++++---------- 1 file changed, 47 insertions(+), 24 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 8da15ce..18150c9 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -19,32 +19,55 @@ on: # 配置触发workflow的事件 default: 'The Octoverse' -jobs: # workflow中的job +# 定义环境变量, 后面会使用 +# 定义 APP_NAME 用于 docker build-args +# 定义 DOCKERHUB_REPO 标记 docker hub repo 名称 +env: + APP_NAME: douyin_tiktok_download_api + DOCKERHUB_REPO: jwstar/douyin_tiktok_download_api - push_to_registry: # job的名字 - name: Push Docker image to Docker Hub - runs-on: ubuntu-latest # job运行的基础环境 - - steps: # 一个job由一个或多个step组成 - - name: Check out the repo - uses: actions/checkout@v2 # 官方的action,获取代码 - - - name: Log in to Docker Hub - uses: docker/login-action@v1 # 三方的action操作, 执行docker login +jobs: + main: + # 在 Ubuntu 上运行 + runs-on: ubuntu-latest + steps: + # git checkout 代码 + - name: Checkout + uses: actions/checkout@v2 + # 设置 QEMU, 后面 docker buildx 依赖此. + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + # 设置 Docker buildx, 方便构建 Multi platform 镜像 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + # 登录 docker hub + - name: Login to DockerHub + uses: docker/login-action@v1 with: - username: ${{ secrets.DOCKERHUB_USERNAME }} # 配置dockerhub的认证,在Github项目主页 【Settings】 -> 【Secrets】 添加对应变量 + # GitHub Repo => Settings => Secrets 增加 docker hub 登录密钥信息 + # DOCKERHUB_USERNAME 是 docker hub 账号名. + # DOCKERHUB_TOKEN: docker hub => Account Setting => Security 创建. + username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Extract metadata (tags, labels) for Docker - id: meta - uses: docker/metadata-action@v3 # 抽取项目信息,主要是镜像的tag + # 通过 git 命令获取当前 tag 信息, 存入环境变量 APP_VERSION + - name: Generate App Version + run: echo APP_VERSION=`git describe --tags --always` >> $GITHUB_ENV + # 构建 Docker 并推送到 Docker hub + - name: Build and push + id: docker_build + uses: docker/build-push-action@v2 with: - images: jwstar/douyin_tiktok_download_api - - - name: Build and push Docker image - uses: docker/build-push-action@v2 # docker build & push - with: - context: . + # 是否 docker push push: true - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} + # 生成多平台镜像, see https://github.com/docker-library/bashbrew/blob/v0.1.1/architecture/oci-platform.go + platforms: | + linux/amd64 + linux/arm64 + # docker build arg, 注入 APP_NAME/APP_VERSION + build-args: | + APP_NAME=${{ env.APP_NAME }} + APP_VERSION=${{ env.APP_VERSION }} + # 生成两个 docker tag: ${APP_VERSION} 和 latest + tags: | + ${{ env.DOCKERHUB_REPO }}:latest + ${{ env.DOCKERHUB_REPO }}:${{ env.APP_VERSION }} From 32d2f0ef0ebf05af10a84826dfb210ea2c6c99e2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 08:21:36 +0000 Subject: [PATCH 12/15] docs: Added README."en".md translation via https://github.com/dephraiim/translate-readme --- README.en.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.en.md b/README.en.md index 736f7bf..cae12a1 100644 --- a/README.en.md +++ b/README.en.md @@ -36,7 +36,8 @@ Updated on 2022/07/18, the shortcut command can automatically check for updates, This project uses[PyWebIO](https://github.com/pywebio/PyWebIO)、[Flask](https://github.com/pallets/flask), using Python to implement online batch parsing of Douyin's watermark-free video/atlas. -It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)Cooperate with this project API to realize in-app download. +It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334) +配合本项目API实现应用内下载。 The shortcut command needs to be in the Douyin or TikTok app, select the video you want to save, click the share button, and then find "Douyin TikTok No Watermark Download" This option, if you encounter a notification asking whether to allow shortcut commands to access xxxx (domain name or server), you need to click Allow before it can be used normally. The successfully downloaded video or gallery will be saved in a special album for easy browsing. @@ -167,7 +168,7 @@ https://www.douyin.com/video/6914948781100338440 https://www.douyin.com/discover?modal_id=7069543727328398622 ``` -- TikTok URL Shortening (In-App Copy) +- TikTok短网址 (APP内复制) ```text 例子: @@ -351,7 +352,7 @@ The project is deployed on a South Korean server, parsing TikTok errors, and vis > Deploy using the Pagoda Linux panel ( > The Chinese pagoda is going to be bound to a mobile phone number, which is very rogue and cannot be bypassed. It is recommended to use the international version of the pagoda. Google search for the keyword aapanel to install it yourself, and the deployment steps are similar. ) -- First, go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API, which can be modified in the file config.ini.) +- First go to the security group to open ports 5000 and 2333 (default 5000 for Web, 2333 for API default, which can be modified in the file config.ini.) - Search for python in the Pagoda app store and install the project manager (version 1.9 is recommended) ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_1.png) @@ -382,7 +383,7 @@ curl -fsSL get.docker.com -o get-docker.sh&&sh get-docker.sh &&systemctl enable ``` - Just leave the config.int and docker-compose.yml files -- Run the command to let the container run in the background +- Run the command to keep the container running in the background ```yaml docker compose up -d From 01a320dbd34633efd613a990c0e46e72d1478b87 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 08:21:43 +0000 Subject: [PATCH 13/15] docs: Added README."zh-TW".md translation via https://github.com/dephraiim/translate-readme --- README.zh-TW.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.zh-TW.md b/README.zh-TW.md index a8f0acc..30165d3 100644 --- a/README.zh-TW.md +++ b/README.zh-TW.md @@ -367,7 +367,7 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 - API啟動文件選擇`web_api.py` - 勾選安裝模塊依賴 - 開機啟動隨意 -- 如果寶塔運行了`Nginx`等其他服务时请自行判断端口是否被占用,运行端口可在文件config.ini中修改。 +- 如果寶塔運行了`Nginx`等其他服務時請自行判斷端口是否被佔用,運行端口可在文件config.ini中修改。 ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_2.png) From 7e919b631ae99a38f592a1742bbf8fc54fd952a0 Mon Sep 17 00:00:00 2001 From: jw <2419254437@qq.com> Date: Mon, 22 Aug 2022 16:26:55 +0800 Subject: [PATCH 14/15] Update docker-compose.yml --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index cb51527..b34ca29 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.7" services: # bot - douyintgbot: + douyin_tiktok_download_api: image: jwstar/douyin_tiktok_download_api network_mode: host container_name: douyin_tiktok_download_api From b10c252db5053e1bbd22592596ea61d4ccf7f43a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Aug 2022 08:27:44 +0000 Subject: [PATCH 15/15] docs: Added README."en".md translation via https://github.com/dephraiim/translate-readme --- README.en.md | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/README.en.md b/README.en.md index cae12a1..fd1a43d 100644 --- a/README.en.md +++ b/README.en.md @@ -9,7 +9,7 @@ Language: \[[English](https://github.com/Evil0ctal/Douyin_TikTok_Download_API/b > Note: This API is suitable for Douyin and TikTok. Douyin is TikTok in China. You can distribute or modify the code at will, but please mark the original author. -Ladies and gentlemen, this site has been providing free API services since November 2021. The server cost of Azure is basically 15$ per month, so please sponsor me a little bit if you can (not just want to eat, the United States is too toothless) Expensive and no money•﹏•), so if you have the ability, you can sponsor my overseas server or transfer money to me, I will put the sponsorship list in the project readme file, and sincerely thank you for your recognition and support, really It's not just a meal, it's forced by life, it's a helpless move, I hope you understand. +Ladies and gentlemen, this site has been providing free API services since November 2021. The server cost of Azure is basically 15$ per month, so please sponsor me a little bit if you can (not just want to eat, the United States is too toothless) Expensive and no money•﹏•), so if you have the ability, you can sponsor my overseas server or transfer money to me, I will put the sponsorship list in the project readme file, and sincerely thank you for your recognition and support, really It's not because I want to have a meal, it's forced by life, and it's a helpless move. I hope you understand. The server problem has been solved (the wool is 4$ per month). The disadvantage is that it is a bit slow. The average response speed of the API is about 1s. If you think it is too slow, you can try to deploy it yourself. @@ -25,7 +25,7 @@ My WeChat: Evil0ctal 🛰API demo: 💾iOS Shortcuts (Chinese):[Click to get](https://www.icloud.com/shortcuts/331073aca78345cf9ab4f73b6a457f97)( -Updated on 2022/07/18, the shortcut command can automatically check for updates, and you can install it once. ) +Updated on 2022/07/18, the shortcut command can automatically check for updates, just install it once. ) 🌎iOS Shortcut(English):[Click to get](https://www.icloud.com/shortcuts/83548306bc0c4f8ea563108f79c73f8d)(Updated on 2022/07/18, this shortcut will automatically check for updates, only need to install it once.) @@ -36,8 +36,7 @@ Updated on 2022/07/18, the shortcut command can automatically check for updates, This project uses[PyWebIO](https://github.com/pywebio/PyWebIO)、[Flask](https://github.com/pallets/flask), using Python to implement online batch parsing of Douyin's watermark-free video/atlas. -It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334) -配合本项目API实现应用内下载。 +It can be used to download videos that the author prohibits to download, or to perform data crawling, etc., and can be matched with[Shortcut APP that comes with iOS](https://apps.apple.com/cn/app/%E5%BF%AB%E6%8D%B7%E6%8C%87%E4%BB%A4/id915249334)Cooperate with the API of this project to realize in-app download. The shortcut command needs to be in the Douyin or TikTok app, select the video you want to save, click the share button, and then find "Douyin TikTok No Watermark Download" This option, if you encounter a notification asking whether to allow shortcut commands to access xxxx (domain name or server), you need to click Allow before it can be used normally. The successfully downloaded video or gallery will be saved in a special album for easy browsing. @@ -142,7 +141,7 @@ http://localhost(服务器IP):2333/ ## 🗺️ Supported submission formats (including but not limited to the following examples): -- Douyin share password (copy in APP) +- 抖音分享口令 (APP内复制) ```text 例子:7.43 pda:/ 让你在几秒钟之内记住我 https://v.douyin.com/L5pbfdP/ 复制此链接,打开Dou音搜索,直接观看视频! @@ -168,7 +167,7 @@ https://www.douyin.com/video/6914948781100338440 https://www.douyin.com/discover?modal_id=7069543727328398622 ``` -- TikTok短网址 (APP内复制) +- TikTok Short URL (In-App Copy) ```text 例子: @@ -341,7 +340,7 @@ http://localhost(服务器IP):2333/music?url="复制的(抖音/TikTok)口令/链 ## 💾Deployment (Method 1) > Note: -> The screenshots may not match the text due to update problems, please refer to the text description first. +> The screenshots may not match the text due to update problems. Please refer to the text description first. > It is best to deploy this project to an overseas server (preferably a server in the United States), otherwise strange problems may occur. @@ -368,7 +367,7 @@ The project is deployed on a South Korean server, parsing TikTok errors, and vis - API startup file selection`web_api.py` - Check install module dependencies - Start at will -- If the pagoda runs`Nginx`When waiting for other services, please judge whether the port is occupied. The running port can be modified in the file config.ini. +- If the pagoda runs`Nginx`When waiting for other services, please judge by yourself whether the port is occupied. The running port can be modified in the file config.ini. ![](https://raw.githubusercontent.com/Evil0ctal/TikTokDownloader_PyWebIO/main/Screenshots/BT_Linux_Panel_Deploy_2.png) @@ -410,7 +409,7 @@ docker compose pull && docker compose down && docker compose up -d ## 🎉 Screenshot > Note: -> The screenshots may not match the text due to update problems, please refer to the text description first. +> The screenshots may not match the text due to update problems. Please refer to the text description first. - Main interface