diff --git a/.github/ISSUE_TEMPLATE/ask-question.md b/.github/ISSUE_TEMPLATE/ask-question.md new file mode 100644 index 0000000..fa41ee4 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/ask-question.md @@ -0,0 +1,26 @@ +--- +name: Ask question +about: 和项目有关的提问 +title: "[QUESTION]" +labels: 提问(question) +assignees: '' + +--- + +- [ ] ~~*在提问时请注意不要包含个人敏感信息*~~ +- [ ] 我明白我的提问可能不会得到明确回复或解决。 + +**问题描述** +简要描述你想要获取支持或询问的内容。 + +**其他细节** +提供任何相关的细节或背景信息,例如你要询问的函数或与项目相关的具体内容。 + +**截图/代码示例** +如果有必要,可以提供截图或代码示例以更好地说明问题或询问的内容。 + +**期望的支持** +简要说明你期望从社区或项目维护者那里得到的支持或回答。 + +**其他** +如果有其他需要补充的内容,请在此处添加。 diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md new file mode 100644 index 0000000..cd9d271 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.md @@ -0,0 +1,72 @@ +--- +name: Bug report +about: 创建详细错误报告帮助解决你遇到的问题 +title: "[BUG]" +labels: 故障(bug) +assignees: '' + +--- + +- [ ] 我查看了 [文档](https://johnserf-seed.github.io/f2/quick-start.html) 以及 [已关闭的问题](https://github.com/Johnserf-Seed/f2/issues?q=is%3Aissue+is%3Aclosed) 以寻找可能的解决方案。 +- [ ] 我在 [常见的问题与解决办法](https://johnserf-seed.github.io/f2/question-answer/qa.html) 中找不到我的问题。 +- [ ] ~~*你的问题是公开的,请注意删除个人敏感内容再上传*~~ +- [ ] 不按照模板填写的问题将不会得到优先的处理。 + +- 如果错误问题是可视化的,请在**屏幕截图**贴截图。如果你是开发者请在**错误重现**提供一个最小的代码示例来演示该问题。 +- 相同的问题将会被标记`重复(duplicate)`,如果你的问题被标记为`已确认(confirmed)`则会在后续的推送中修复,请时刻留意。 +- 退订邮件提醒请点击邮件的底部`unsubscribe`。 + + +**详细描述错误** +简明扼要地描述遇到的错误。 + +**系统平台** +
+单击展开 +Q:你在哪个平台(Win/Linux/Mac)上运行?你使用的是什么浏览器?你使用的是什么终端软件?你使用的F2是什么版本? + +A: + + - 操作系统: [e.g. Win10 x64 22H2 19045.4046] + - 浏览器 [e.g. Edge 122.0.2365.52] + - 终端 [e.g. WT 1.18.10301.0] + - F2版本 [e.g. 0.0.1.4] + +
+ +**错误重现** +
+单击展开 +Q: 请你复制并粘贴出错时运行的命令和配置文件内容,以及重现该行为的步骤。如果你一次性就提供完整信息,就会节省很多解决问题的时间。 + +A: + +1. +2. +3. + +Q: 请添加调试命令`f2 -d DEBUG`重新运行出错的命令并提供日志目录下的日志文件。 + +A: + +Q: 如果是开发者请提供最小的代码示例 + +A: + +```python + +``` + +
+ +**预期行为** +简明扼要地描述期望发生的事情。 + +**屏幕截图** +请添加截图以帮助解释你的问题。 + +**日志文件** +请添加调试日志文件以帮助解释你的问题。 + +**其他** +如有,可以添加有关问题的其他信息。 diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..0a47b90 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,26 @@ +--- +name: Feature request +about: 为此项目提出建议 +title: "[FEATRUE / REQUEST]" +labels: 需求建议(enhancement) +assignees: '' + +--- + +在提出功能请求之前,请考虑在 https://github.com/Johnserf-Seed/f2/discussions 上发布反馈或在Discord中讨论。 + +**Q: 你有检查过类似建议的问题吗?** +在所有的问题列表里检查是否有类似的建议。 +- [ ] 是 +- [ ] 否 + +**Q: 你将如何改进 F2?** +请尽可能详细地说明。请提供你希望它如何工作的示例代码或流程。 +A: + +**Q: 它能为你解决什么问题?** +该功能能解决你的什么问题?我也许可以建议一种现有的解决方法。 +A: + +**其他** +如有,请添加有关功能请求的任何其他内容或截图。 diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 5a76df0..0fc351b 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -6,7 +6,7 @@ const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -const version = "v0.0.1.3-pw.1" +const version = "v0.0.1.4-pw.1" // https://vitepress.dev/reference/site-config export default defineConfig({ diff --git a/docs/cli.md b/docs/cli.md index e69de29..4ce0db4 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -0,0 +1,106 @@ +# 命令行 + +`F2` 配置文件独立于 CLI 命令参数且`最低优先`。 + +## CLI临时配置 + +CLI 参数命令优先级最高,所以在不修改配置文件的情况下就可以使用 CLI 参数更改为下载「抖音」用户`喜欢`的所有作品。因此也可以在 CLI 中临时下载A的直播,B的作品与C的喜欢。 + +::: code-group + +```bash [用户A] +$ f2 -d dy -c C:\Users\JohnserfSeed\Desktop\A.yaml -M live -u https://live.douyin.com/xxxxxxxxx +``` + +```bash [用户B] +$ f2 -d dy -c C:\Users\JohnserfSeed\Desktop\B.yaml -M post +``` + +```bash [用户C] +$ f2 -d dy -c C:\Users\JohnserfSeed\Desktop\C.yaml -M like +``` +::: + +赶快试试吧! + +::: tip 说明 +之后的版本会简化操作。不需要再指定该用户的直播间就可以切换下载该用户直播的模式。 +更多的 CLI 命令请查阅 [CLI 参考](/cli)。 +::: + +::: warning 重要 +- 命名方式也不受限制,你可以设置`dy-A.yaml`、`dy-B.yaml`、`tk-A.yaml`、`tk-B.ymal`用以区分不同app的用户配置。 +- 配置的操作是通用的,举例用的是douyin的配置文件,tiktok与其他 F2 应用的配置文件的操作是一模一样的。 +::: + + +## 拓展 + +如果不想设置很多配置文件,那就使用主配置。 + +下载「抖音」用户`发布`的所有作品,只需要在主配置文件中设置`mode: post`即可。 + +::: code-group + +```sh [Windows] +$ f2 dy -c f2/conf/app.yaml +``` + +```sh [Linux] +$ f2 dy -c f2/conf/app.yaml +``` + +```sh [MacOS] +$ f2 dy -c f2/conf/app.yaml +``` +::: + +下载「抖音」用户`喜欢`的所有作品,CLI 中设置`mode: like`即可。 + +::: code-group + +```sh [Windows] +$ f2 dy -M like -c f2/conf/app.yaml +``` + +```sh [Linux] +$ f2 dy -M like -c f2/conf/app.yaml +``` + +```sh [MacOS] +$ f2 dy -M like -c f2/conf/app.yaml +``` +::: + +下载「抖音」用户`单个`的作品: + +::: code-group + +```sh [Windows] +$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +``` + +```sh [Linux] +$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +``` + +```sh [MacOS] +$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +``` +::: + +F2 会智能的识别出混乱文本中的链接,同时也支持长短链的输入。 + +::: details 支持的链接格式 + +<<< @/snippets/douyin/support-link.md +::: + +::: tip 需要注意的是 +在CLI模式下,带有其他信息的文本需要用英文引号将其完整包裹: + +```sh [Windows] +$ f2 dy -M one -u '7.64 gOX:/ w@f.oD 05/14 世界这本书 又多读了一页。冰岛????旅行记# 冰岛 https://v.douyin.com/iR2syBRn/ 复制此链接,打开Dou音搜索,直接观看视! +' -c conf/app.yaml +``` +::: \ No newline at end of file diff --git a/docs/guide/what-is-f2.md b/docs/guide/what-is-f2.md index 4665924..342c7a2 100644 --- a/docs/guide/what-is-f2.md +++ b/docs/guide/what-is-f2.md @@ -11,11 +11,7 @@ f2 dy -c conf/app.yaml ``` 也可以在代码中指定配置文件的路径,例如: -```python -import f2 - -f2.APP_CONFIG_FILE_PATH = "conf/app.yaml" -``` +<<< @/snippets/set-debug.py#set-config-snippet{3} ## 设置调试日志级别 @@ -27,7 +23,6 @@ f2.APP_CONFIG_FILE_PATH = "conf/app.yaml" ![set-debug](/douyin/set-debug.png) - ## 日志输出到控制台 <<< @/snippets/set-debug.py#log-2-console-snippet{5} @@ -36,4 +31,4 @@ f2.APP_CONFIG_FILE_PATH = "conf/app.yaml" ::: tip 提示 如果你想要输出到控制台的日志更加详细,可以使用 `DEBUG` 级别。并且后续必须使用该logger对象来输出日志,否则日志将不会输出到控制台。 -::: \ No newline at end of file +::: diff --git a/docs/install.md b/docs/install.md index 263bbca..4d0a56d 100644 --- a/docs/install.md +++ b/docs/install.md @@ -6,32 +6,38 @@ - [Windows Terminal](https://aka.ms/terminal) 终端,通过命令行界面(CLI)访问。 - 支持[Python](https://en.wikipedia.org/wiki/python) 语法的文本编辑器。 - 推荐使用[VSCode](https://code.visualstudio.com/) 或[VSCode在线](https://vscode.dev)。 +- [Git](https://git-scm.com/) ,用于开发者从GitHub上克隆项目。 -`F2` 可单独使用,也可安装到现有项目中。在这两种情况下,你都可以使用以下命令选择不同版本安装: +## 包管理器安装 + +`F2` 可单独使用,也可安装到现有项目中。在这两种情况下,你都可以使用以下命令选择不同版本安装: ::: code-group ```sh [Windows] -$ pip install f2 # 最新版本 -$ pip install f2==x.x.x # 指定版本 -$ pip install 'f2>=x.x.x' # 最小版本 +$ pip install f2 # 最新版本 +$ pip install f2==x.x.x.x # 指定版本 +$ pip install -U f2 # 更新版本 +$ pip uninstall f2 # 卸载版本 ``` ```sh [Linux] -$ pip3 install f2 # 最新版本 -$ pip3 install f2==x.x.x # 指定版本 -$ pip3 install 'f2>=x.x.x' # 最小版本 +$ pip3 install f2 # 最新版本 +$ pip3 install f2==x.x.x.x # 指定版本 +$ pip3 install -U f2 # 更新版本 +$ pip3 uninstall f2 # 卸载版本 ``` ```sh [MacOS] -$ pip3 install f2 # 最新版本 -$ pip3 install f2==x.x.x # 指定版本 -$ pip3 install 'f2>=x.x.x' # 最小版本 +$ pip3 install f2 # 最新版本 +$ pip3 install f2==x.x.x.x # 指定版本 +$ pip3 install -U f2 # 更新版本 +$ pip3 uninstall f2 # 卸载版本 ``` ::: ::: details 收到依赖或其他警告? -如果提示python或pip版本错误,请尝试更新到必备条件的版本。 +如果提示python或pip版本错误,请务必更新到必备条件的版本。 如果你的网络环境缓慢,无法正常访问官方镜像。请使用可以正常访问的第三方镜像源。 ::: code-group @@ -49,6 +55,31 @@ $ pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple f2 ``` ::: +## 编译安装 + +如果你是开发者需要修改代码编译安装项目,可以使用以下命令: + +::: code-group + +```sh [Windows] +$ git clone https://github.com/Johnserf-Seed/f2.git +$ cd f2 +$ pip install -e . #注意点前面有一个空格 +``` + +```sh [Linux] +$ git clone https://github.com/Johnserf-Seed/f2.git +$ cd f2 +$ pip3 install -e . #注意点前面有一个空格 +``` + +```sh [MacOS] +$ git clone https://github.com/Johnserf-Seed/f2.git +$ cd f2 +$ pip3 install -e . #注意点前面有一个空格 +``` +::: + ::: tip 提示 `F2` 是一个异步库,开发者在调用方法前请仔细`阅读相关文档`。 diff --git a/docs/question-answer/qa.md b/docs/question-answer/qa.md index 3eaa199..5cbbddb 100644 --- a/docs/question-answer/qa.md +++ b/docs/question-answer/qa.md @@ -14,4 +14,8 @@ ## f2: command not found -<<< @/snippets/QA.md#f2-command-not-found \ No newline at end of file +<<< @/snippets/QA.md#f2-command-not-found + +## WARNING 没有找到符合条件的作品 + +<<< @/snippets/QA.md#no-matching-videos-found diff --git a/docs/quick-start.md b/docs/quick-start.md index 2027ecf..7d04ce5 100644 --- a/docs/quick-start.md +++ b/docs/quick-start.md @@ -7,7 +7,7 @@ ## 启动和运行 -`F2` 设计的初衷是方便用户与开发者一键采集多平台的`异步`库。支持 CLI 命令调用与接口调用。 +`F2` 是一个灵活的`异步`下载库。`F2` 设计的初衷是方便用户与开发者一键采集多平台的`异步`库。支持 CLI 命令调用与接口调用。 ![cli-start](/f2-help.png) diff --git a/docs/site-config.md b/docs/site-config.md index 32886f6..bd662bd 100644 --- a/docs/site-config.md +++ b/docs/site-config.md @@ -6,19 +6,28 @@ ## 主配置文件 -`F2` 是一个灵活的异步下载库。你可以使用默认的配置文件,同时也能指定个性化的配置文件。 - -`F2` 默认的配置文件(`f2/conf/app.yaml`)是一个yaml文件。它非常重要,用来保存各个app基础的配置。 +`F2`配置文件由三部分组成,`应用低频配置文件(app.yaml)`,`F2配置文件(conf.yaml)`,`应用默认配置文件(defaults.yaml)`。 ::: info 什么是yaml? -用类似大纲的缩进方式呈现数据序列化的格式文件,[yaml](https://zh.wikipedia.org/wiki/YAML)。 +用类似大纲的缩进方式呈现数据序列化的格式文件,[what is yaml?](https://zh.wikipedia.org/wiki/YAML)。 ::: +**应用低频配置文件(app.yaml)**:用来保存所有应用不常变动的配置,例如的`cookie`、`文件名模板`、`下载路径`、`连接超时时间`、`超时重试次数`等。 + +**F2配置文件(conf.yaml)**:用来保存`F2`的配置,例如不同应用的`计算参数`和`代理`。 + +**应用默认配置文件(defaults.yaml)**:用来保存各个app的初始化默认配置模板,**_请不要修改与使用它_**。 ::: code-group <<< @../../f2/conf/app.yaml +<<< @../../f2/conf/conf.yaml +<<< @../../f2/conf/defaults.yaml ::: -F2 配置文件独立于 CLI 命令参数且具有`最低优先`。这意味只需要一个主配置存`cookie`再用 CLI 命令或者用户的自定义配置即可下载不同的用户作品。 + +高低频参数分离意味着当创建的自定义配置文件比较多的情况下无需修改每一个自定义配置文件中的`cookie`,只需要修改**应用低频配置文件(app.yaml)** 中的`cookie`即可。 + +将高频修改的参数`主页链接`、`下载模式`等,设置在你的自定义配置中,即可灵活调用下载不同用户的不同类型作品。 + - 如何初始化配置文件?请查阅[初始化配置文件](#初始化配置文件)。 @@ -36,23 +45,25 @@ F2 配置文件独立于 CLI 命令参数且具有`最低优先`。这意味只 $ f2 -h ``` -F2 安装完成后,运行不同应用的启动初始化配置文件命令: +`F2` 安装完成后,第一步就是运行应用的初始化配置文件命令: ::: code-group ```sh [Windows] -$ f2 apps --init-config apps.yaml +$ f2 apps --init-config my_apps.yaml ``` ```sh [Linux] -$ f2 apps --init-config apps.yaml +$ f2 apps --init-config my_apps.yaml ``` ```sh [MacOS] -$ f2 apps --init-config apps.yaml +$ f2 apps --init-config my_apps.yaml ``` ::: +`my_apps.yaml`就是该应用的自定义配置文件。 + 迎接你的将是几个简单的问题: @@ -76,71 +87,20 @@ $ f2 douyin --init-config dy.yaml 请查阅[配置文件的位置](#配置文件的位置)。 ::: - -## 配置cookie - -通过简单的配置,用户与开发者就可以立马上手 `F2`。只需通过 `--update-config` 命令就可以保存`cookie`到主配置文件或者使用`--auto-cookie`命令自动从浏览器获取并填写。 - -::: code-group - -```sh [--update-config] -$ f2 dy -k "从浏览器中复制的cookie" -c conf/app.yaml --update-config -``` - -```sh [--auto-cookie] -$ f2 dy -c conf/app.yaml --auto-cookie edge -``` -::: - -当然不想出错就手动复制浏览器中的`cookie`,然后使用`--update-config` 命令保存到主配置文件中。手动复制的操作百度一下就可以了。 - -::: warning 重要 -- 更新配置文件的同时将会在同目录里备份原配置文件,备份文件名为`*.yaml.bak`,方便出错回滚。 -- 不一定非要保存到主配置文件中,你也可以保存到自定义的配置文件中。随你的使用习惯,小白请按照文档的说明来操作。 -- `--update-config` 命令与`--auto-cookie`命令会覆盖主配置文件中的`cookie`,请谨慎使用。 -- `--update-config` 命令需要指定`-c`参数,否则会报错。 -::: - - -## 配置文件的位置 - -你可以可以在`x:\xxxxxxx\Python\Lib\site-packages\f2\conf\app.yaml`中找到它。 - -::: tip 提示 -如果找不到配置文件可以在终端输入 - -::: code-group -```sh [Windows] -$ pip show f2 -``` - -```sh [Linux] -$ pip3 show f2 -``` - -```sh [MacOS] -$ pip3 show f2 -``` -然后查看Location,并在该目录下找到配置文件。 -::: - - ## 自定义配置文件 -由于 F2 采用 app 插件分离式设计,这意味着你可以为相同的 app 配置不同模式的配置文件。 - -一头雾水🎃? 接着看。 +由于 `F2` 的配置文件采用高低频参数分离式设计,这意味着你可以为`相同的应用`设置`不同的配置文件`。你可以只设置一个参数在自定义配置文件中,也可以设置你需要高频修改的参数。 -### 多用户配置 +### 多用户灵活配置 -举个例子,我关注了3个用户其中有A的主页跳舞作品、B的喜欢页作品、C的直播。以往的`TikTokDownload`项目设计冗余,一次性实现起来较复杂。 +举个例子,我关注了3个用户。其中有A的主页作品、B的喜欢页作品、C的直播。那么我可以为每个用户配置一个专属的配置文件。 -在 F2 中,先把主配置文件中`cookie`与其他你需要设置的命令配置好。再在其他目录下建立A、B、C用户的专属配置文件,只需配置不同你所需的的下载模式。 +在 `F2` 中,先把**应用低频配置文件(app.yaml)** 中`cookie`与其他你需要设置的参数配置好。再在其他目录下建立A、B、C用户的专属配置文件,只需配置上低频中没有设置的参数。如下面2个`高频参数`所示,为不同用户所需的下载模式。 ::: code-group -```yaml [用户A] +```yaml [用户A主页作品] douyin: # 浩子 url: https://www.douyin.com/user/MS4wLjABAAAAu8qwDm1-muGuMhZZ-tVzyPVWlUxIbQRNJN_9k83OhWU?vid=7263127189829307659 @@ -148,7 +108,7 @@ douyin: mode: post ``` -```yaml [用户B] +```yaml [用户B喜欢页作品] douyin: # 小布丁 url: https://www.douyin.com/user/MS4wLjABAAAA35iXl5qqCbLKY99pUvxkXzvpSXi8jgUbJ0zR4EuTpcHcS8PHaEb6G9yB6iKR0dNl?vid=7240082457372937511 @@ -156,7 +116,7 @@ douyin: mode: like ``` -```yaml [用户C] +```yaml [用户C直播] douyin: # 醒子8ke url: https://live.douyin.com/775841227732 @@ -166,14 +126,35 @@ douyin: ::: ::: tip 说明 -只是举例,实际上用户B的喜欢页没有开放,用户C也不一定直播,一切根据你的喜好来设置。 +只是举例,实际上用户B的喜欢页没有开放,用户C也不一定直播,一切根据你的喜好来设置,do ever what you want。 ::: -随后你便可以开启终端,并输入不同的配置文件路径即可一键下载。 +随后你便可以开启终端,并直接输入自定义配置文件路径即可一键下载,剩下的低频参数会自动合并,无需担心。 ::: code-group ```bash [用户A] + +$ f2 dy -c X:\A.yaml +``` + +```bash [用户B] +$ f2 dy -c X:\B.yaml +``` + +```bash [用户C] +$ f2 dy -c X:\C.yaml +``` +::: + +是不是非常方便且容易管理🤭,你可以随时添加喜欢的用户配置文件并设置你所需的下载模式。 + +::: warning 配置优先级 +- `CLI`参数优先级最高,`自定义配置文件`优先级次之,`应用低频配置文件(app.yaml)`优先级最低。 +- `CLI` > `自定义配置文件` > `应用低频配置文件(app.yaml)`。 +- 高频参数会覆盖低频参数,未设置的参数不会被覆盖。 +- 要想了解更多的`CLI`参数,请查阅[CLI 参考](/cli)。 +======= $ f2 dy -c C:\Users\JohnserfSeed\Desktop\A.yaml ``` @@ -214,82 +195,56 @@ $ f2 dy -c C:\Users\JohnserfSeed\Desktop\C.yaml -M like 更多的 CLI 命令请查阅 [CLI 参考](/cli)。 ::: -::: warning 重要 -- 命名方式也不受限制,你可以设置`dy-A.yaml`、`dy-B.yaml`、`tk-A.yaml`、`tk-B.ymal`用以区分不同app的用户配置。 -- 配置的操作是通用的,举例用的是douyin的配置文件,tiktok与其他 F2 应用的配置文件的操作是一模一样的。 -::: - - -## 拓展 - -如果不想设置很多配置文件,那就使用主配置。 +## 配置cookie -下载「抖音」用户`发布`的所有作品,只需要在主配置文件中设置`mode: post`即可。 +通过简单的配置,用户与开发者就可以立马上手 `F2`。只需通过 `--update-config` 命令就可以保存`cookie`到主配置文件或者使用`--auto-cookie`命令自动从浏览器获取。 ::: code-group -```sh [Windows] -$ f2 dy -c f2/conf/app.yaml -``` - -```sh [Linux] -$ f2 dy -c f2/conf/app.yaml +```sh [--update-config] +$ f2 dy -k "从浏览器中复制的cookie" -c app.yaml --update-config ``` -```sh [MacOS] -$ f2 dy -c f2/conf/app.yaml +```sh [--auto-cookie] +$ f2 dy -c app.yaml --auto-cookie edge ``` ::: -下载「抖音」用户`喜欢`的所有作品,CLI 中设置`mode: like`即可。 +当然不想出错就手动复制浏览器中的`cookie`,然后使用`--update-config` 命令保存到主配置文件中。手动复制的操作百度一下就可以了。 -::: code-group +::: warning 重要 +- 更新配置文件的同时将会在同目录里备份原配置文件,备份文件名为`*.yaml.bak`,方便回滚。 +- 如果`--auto-cookie`不指定`-c`参数,将直接保存至**低频配置文件(app.yaml)** 中。 +- `cookie`也可以保存到自定义的配置文件中。随你的使用习惯,小白请严格按照文档的说明来操作。 +- `--update-config` 命令与`--auto-cookie`命令会覆盖主配置文件中的`cookie`,请谨慎使用。 +- `--update-config` 命令需要指定`-c`参数,否则会报错。 +::: -```sh [Windows] -$ f2 dy -M like -c f2/conf/app.yaml -``` -```sh [Linux] -$ f2 dy -M like -c f2/conf/app.yaml -``` +## 配置文件的位置 -```sh [MacOS] -$ f2 dy -M like -c f2/conf/app.yaml -``` -::: +你可以在`x:\xxxxxxx\Python\Lib\site-packages\f2\conf\`文件夹中找到它们。 -下载「抖音」用户`单个`的作品: +::: tip 提示 +如果找不到配置文件夹路径可以在终端输入 ::: code-group - ```sh [Windows] -$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +$ pip show f2 ``` ```sh [Linux] -$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +$ pip3 show f2 ``` ```sh [MacOS] -$ f2 dy -M one -u https://v.douyin.com/iRNBho6u/ -c conf/app.yaml +$ pip3 show f2 ``` +然后查看Location,并在该目录下找到配置文件。 ::: -F2 会智能的识别出混乱文本中的链接,同时也支持长短链的输入。 -::: details 支持的链接格式 -<<< @/snippets/douyin/support-link.md -::: - -::: tip 需要注意的是 -在CLI模式下,带有其他信息的文本需要用英文引号将其完整包裹: - -```sh [Windows] -$ f2 dy -M one -u '7.64 gOX:/ w@f.oD 05/14 世界这本书 又多读了一页。冰岛????旅行记# 冰岛 https://v.douyin.com/iR2syBRn/ 复制此链接,打开Dou音搜索,直接观看视! -' -c conf/app.yaml -``` -::: ## 下一步是什么? diff --git a/docs/snippets/QA.md b/docs/snippets/QA.md index 7ac04e0..1a0b383 100644 --- a/docs/snippets/QA.md +++ b/docs/snippets/QA.md @@ -34,3 +34,18 @@ https://datatracker.ietf.org/doc/html/rfc6585#section-7.2 1. 编辑`~/.bashrc`文件,添加`export PATH="$PATH:/home/YOUR_NAME/.local/bin"`。 2. 运行`source ~/.bashrc`命令使环境变量生效。 // #endregion f2-command-not-found + + +// #region no-matching-videos-found +如果出现`WARNING 没有找到符合条件的作品`,请检查你是否配置了`interval`参数,该参数是用来设置作品发布时间的筛选条件。 + +解决办法: +1. 检查你的配置文件中是否有`interval`参数。如果没有,请添加为`interval: all`。 +2. 如果你的配置文件中有`interval`参数,请检查你的`interval`参数是否设置正确。 +3. `cli`命令中的`-i`参数也是用来设置作品发布时间的筛选条件 你可以设置为`-i all`。 +4. 如果你使用了`-i`参数,请检查你的`-i`参数是否设置正确。 + +可参考的issue: +https://github.com/Johnserf-Seed/f2/issues/42 +https://github.com/Johnserf-Seed/TikTokDownload/issues/660 +// #endregion no-matching-videos-found diff --git a/docs/snippets/set-debug.py b/docs/snippets/set-debug.py index f6f3f50..b73e8e7 100644 --- a/docs/snippets/set-debug.py +++ b/docs/snippets/set-debug.py @@ -1,3 +1,11 @@ +// #region set-config-snippet +import f2 + +f2.APP_CONFIG_FILE_PATH = "app.yaml" + +// #endregion set-config-snippet + + // #region set-debug-snippet import asyncio from f2.apps.douyin.handler import DouyinHandler