From 4524ce6fe6db35b91e41358aee83a63a14d3f9d9 Mon Sep 17 00:00:00 2001 From: JoeamAmier Date: Sat, 16 Dec 2023 13:38:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=205.2=20=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 13 +- "docs/Cookie\346\225\231\347\250\213.md" | 2 +- ...kTokDownloader\346\226\207\346\241\243.md" | 29 ++-- ...\345\274\217\346\210\252\345\233\2761.png" | Bin 115819 -> 121881 bytes main.py | 25 ++-- src/Customizer.py | 6 +- src/DataAcquirer.py | 30 ++-- src/DataDownloader.py | 17 ++- src/DataExtractor.py | 6 +- src/Extender.py | 11 ++ src/Parameter.py | 132 +++++++++--------- src/Recorder.py | 12 +- src/main_api_server.py | 4 + 13 files changed, 160 insertions(+), 127 deletions(-) create mode 100644 src/Extender.py diff --git a/README.md b/README.md index 7524b9d2..7fcc1929 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,7 @@ * 🟡 未来可能新增账号新作品监测功能 * 🟡 未来可能新增合集新作品监测功能 * 🟡 未来可能新增直播开播监测功能 +* 🟡 未来可能新增调用 API 下载作品文件功能 * 🟡 未来可能新增获取账号关注列表功能 * 🟡 未来可能新增获取账号收藏合集列表功能 * 🟡 未来可能优化 TikTok 平台批量下载功能 @@ -110,6 +111,7 @@ TikTokDownloader │ ├─ DataAcquirer.py // 接口数据获取模块 │ ├─ DataExtractor.py // 数据提取储存模块 │ ├─ DataDownloader.py // 作品文件下载模块 +│ ├─ Extender.py // 二次开发接口模块 │ ├─ FileManager.py // 作品文件管理模块 │ ├─ Parameter.py // 加密参数生成模块 │ ├─ Recorder.py // 日志及数据记录模块 @@ -140,11 +142,13 @@ TikTokDownloader
    通过源码运行
  1. 安装不低于 3.12 版本的 Python 解释器
  2. 下载最新的源码或 Releases 发布的源码至本地
  3. -
  4. 运行 pip install -r requirements.txt 命令安装程序所需模块
  5. -
  6. 运行 main.py
  7. +
  8. 运行 python -m venv venv 命令创建虚拟环境(可选)
  9. +
  10. 运行 .\venv\Scripts\activate.ps1 或者 venv\Scripts\activate 命令激活虚拟环境(可选)
  11. +
  12. 运行 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt 命令安装程序所需模块
  13. +
  14. 运行 python .\main.py 或者 python main.py 命令启动 TikTokDownloader
-
  • 查看屏幕输出的 TikTokDownloader 免责声明,根据提示输入内容
  • +
  • 阅读 TikTokDownloader 的免责声明,根据提示输入内容
  • 将 Cookie 信息写入配置文件
      手动复制粘贴(推荐)
    1. 参考 Cookie 提取教程,复制所需 Cookie 至剪贴板
    2. @@ -156,7 +160,7 @@ TikTokDownloader
    3. 按照提示操作,将 Cookie 写入配置文件
  • -
  • 返回程序界面,依次选择 终端命令行模式 --> 批量下载链接作品
  • +
  • 返回程序界面,依次选择 终端命令行模式 -> 批量下载链接作品
  • 输入抖音或 TikTok 作品链接即可下载作品文件
  • 更多详细说明请查看 项目文档
  • @@ -272,5 +276,6 @@ TikTokDownloader * https://github.com/psf/requests * https://github.com/pallets/flask * https://github.com/Textualize/rich +* https://github.com/pyinstaller/pyinstaller * https://ffmpeg.org/ffmpeg-all.html * https://html5up.net/hyperspace diff --git "a/docs/Cookie\346\225\231\347\250\213.md" "b/docs/Cookie\346\225\231\347\250\213.md" index 6182441e..e68a563d 100644 --- "a/docs/Cookie\346\225\231\347\250\213.md" +++ "b/docs/Cookie\346\225\231\347\250\213.md" @@ -23,7 +23,7 @@ 开发人员工具 -**方法二\(貌似无效\):** +**方法二\(不适用\):** 1. 打开浏览器\(可选无痕模式启动\),访问`https://www.douyin.com/` 2. 登录抖音账号\(可跳过\) diff --git "a/docs/TikTokDownloader\346\226\207\346\241\243.md" "b/docs/TikTokDownloader\346\226\207\346\241\243.md" index 97c74948..f72f3d61 100644 --- "a/docs/TikTokDownloader\346\226\207\346\241\243.md" +++ "b/docs/TikTokDownloader\346\226\207\346\241\243.md" @@ -10,7 +10,7 @@

    🔥 TikTok 主页/视频/图集/原声;抖音主页/视频/图集/收藏/直播/原声/合集/评论/账号/搜索/热榜数据采集工具:完全开源,基于 Requests 模块实现的免费工具;批量下载抖音账号发布、喜欢、收藏作品;批量下载 TikTok 账号主页作品;下载抖音链接或 TikTok 链接作品;获取抖音直播推流地址;下载抖音直播视频;采集抖音作品评论数据;批量下载抖音合集作品;采集抖音账号详细数据;采集抖音用户 / 作品 / 直播搜索结果;采集抖音热榜数据。

    -

    此文档正在完善中,如有发现任何错误或描述模糊之处,请告知作者以便改进,欢迎各位使用者共同完善项目文档!

    +

    项目文档正在完善中,如有发现任何错误或描述模糊之处,请告知作者以便改进!


    快速入门

      @@ -22,11 +22,13 @@
        通过源码运行
      1. 安装不低于 3.12 版本的 Python 解释器
      2. 下载最新的源码或 Releases 发布的源码至本地
      3. -
      4. 运行 pip install -r requirements.txt 命令安装程序所需模块
      5. -
      6. 运行 main.py
      7. +
      8. 运行 python -m venv venv 命令创建虚拟环境(可选)
      9. +
      10. 运行 .\venv\Scripts\activate.ps1 或者 venv\Scripts\activate 命令激活虚拟环境(可选)
      11. +
      12. 运行 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt 命令安装程序所需模块
      13. +
      14. 运行 python .\main.py 或者 python main.py 命令启动 TikTokDownloader
      -
    1. 查看屏幕输出的 TikTokDownloader 免责声明,根据提示输入内容
    2. +
    3. 阅读 TikTokDownloader 的免责声明,根据提示输入内容
    4. 将 Cookie 信息写入配置文件
        手动复制粘贴(推荐)
      1. 参考 Cookie 提取教程,复制所需 Cookie 至剪贴板
      2. @@ -38,11 +40,11 @@
      3. 按照提示操作,将 Cookie 写入配置文件
    5. -
    6. 返回程序界面,依次选择 终端命令行模式 --> 批量下载链接作品
    7. +
    8. 返回程序界面,依次选择 终端命令行模式 -> 批量下载链接作品
    9. 输入抖音或 TikTok 作品链接即可下载作品文件

    获取 Cookie

    -

    点击查看 Cookie 获取教程

    +

    点击查看 Cookie 获取教程,无效的 Cookie 会导致程序获取数据失败或者无法下载高分辨率视频文件;目前尚无检查 Cookie 有效性的方法。

    入门说明

    关于终端

    ⭐ 推荐使用 Windows 终端(Windows 11 自带默认终端)运行程序以便获得最佳彩色交互显示效果!

    @@ -56,11 +58,11 @@ https://v.douyin.com/分享码/ -账号、视频、图集、直播、合集 +账号、视频、图集、直播、合集、话题 https://vm.tiktok.com/分享码/ -视频、图集 +账号、视频、图集 https://www.douyin.com/note/作品ID @@ -213,7 +215,7 @@ name_format str -文件保存时的命名规则, 值之间使用空格分隔
    默认值: 发布时间-作品类型-账号昵称-描述
    id: 唯一值, desc: 描述, create_time: 发布时间
    nickname: 账号昵称, mark: 账号标识, uid: 账号UID, type: 作品类型 +文件保存时的命名规则, 值之间使用空格分隔
    默认值: 发布时间-作品类型-账号昵称-描述
    id: 作品 ID, desc: 作品描述, create_time: 发布时间
    nickname: 账号昵称, mark: 账号标识, uid: 账号 ID, type: 作品类型 date_format @@ -389,6 +391,7 @@ ```

    将待下载的账号信息写入配置文件,每个账号对应一个对象/字典,tab 参数设置为 favorite 代表批量下载喜欢作品,支持多账号。

    +

    批量下载账号喜欢作品需要使用已登录的 Cookie,否则可能无法获取正确的账号信息!

    发布日期限制

    ```json @@ -667,7 +670,7 @@ document.body.removeChild(downloadLink);

    参数之间使用空格分隔,搜索类型排序规则 支持输入中文或者对应索引,页数时间筛选 仅支持输入整数。

    程序采集的抖音搜索结果会储存至文件,储存名称格式:搜索数据_搜索时间_搜索类型_关键词_排序依据_时间筛选;不支持直接下载搜索结果作品;必须设置 storage_format 参数才能正常使用。

    -

    用户搜索直播搜索 不需要输入排序依据和时间筛选(输入也不会报错)

    +

    用户搜索直播搜索 不需要输入排序依据和时间筛选!

    输入示例

    输入:猫咪

    含义: 关键词:猫咪;搜索类型:综合搜索;页数:1;排序依据:综合排序;时间筛选:不限

    @@ -1006,7 +1009,7 @@ print(response.json())

    启用/禁用检查更新功能

    启用检查更新功能后,运行程序时会向 https://github.com/JoeanAmier/TikTokDownloader/releases/latest 发送请求获取最新 Releases 版本号,并提示是否存在新版本。

    -

    如果存在新版本会提示新版本的 URL 地址,不会自动下载更新。

    +

    如果检查新版本失败,可能是访问 GitHub 超时,并非功能异常;如果存在新版本会提示新版本的 URL 地址,不会自动下载更新。

    启用/禁用作品下载记录