在 FlexGet 中,如果你希望通过代理访问 URL,可以使用其内置的 proxy
插件。以下是如何配置 FlexGet 以通过代理访问 URL 的步骤和示例:
配置代理访问 URL 的步骤
-
确保安装必要的依赖
如果你使用的是 SOCKS 代理(例如 SOCKS5),需要安装pysocks
依赖。可以通过以下命令安装:pip install pysocks
编辑 FlexGet 配置文件
FlexGet 使用 YAML 格式的配置文件(通常是config.yml
)。你需要在任务中添加proxy
插件,并指定代理的类型和地址。-
支持的代理类型
FlexGet 支持以下代理协议:-
http
:HTTP 代理 -
https
:HTTPS 代理 -
socks5
:SOCKS5 代理
-
-
配置示例
以下是一个通过代理访问 RSS URL 的示例配置:tasks: my_rss_task: rss: url: https://example.com/rss-feed proxy: http: http://proxy.example.com:8080 # HTTP 代理 # 或者使用 SOCKS5 代理 # socks5: socks5://proxy.example.com:1080 download: path: /path/to/download
- 在这个例子中,
rss
插件会通过指定的代理访问https://example.com/rss-feed
。 - 如果需要用户名和密码,可以这样配置:
proxy: http: http://username:password@proxy.example.com:8080
- 在这个例子中,
-
全局代理设置(可选)
如果你希望所有任务都使用同一个代理,可以在配置文件顶部全局设置:templates: global: proxy: http: http://proxy.example.com:8080 tasks: my_rss_task: rss: url: https://example.com/rss-feed download: path: /path/to/download
-
禁用特定任务的代理(可选)
如果全局设置了代理,但某个任务不需要使用代理,可以在任务中禁用:tasks: no_proxy_task: rss: url: https://example.com/rss-feed proxy: no download: path: /path/to/download
-
运行 FlexGet
配置完成后,使用以下命令运行 FlexGet:flexget execute
注意事项
-
代理支持限制:并非所有 FlexGet 插件都完全支持代理。目前,
rss
、download
等插件通常可以正常使用代理,但某些特殊插件可能不支持。 -
日志检查:运行时可以通过日志检查代理是否生效。启用详细日志:
flexget execute --loglevel verbose
-
SOCKS5 DNS 问题:如果使用 SOCKS5 代理,DNS 查询可能不会通过代理进行(取决于 FlexGet 和底层库的实现)。如果需要 DNS 也通过代理,可以尝试使用
socks5h
(目前支持可能有限,需查阅最新文档或测试)。
示例:通过 SOCKS5 代理访问 URL
tasks:
socks5_task:
rss:
url: https://example.com/rss-feed
proxy:
socks5: socks5://127.0.0.1:1080 # 本地 SOCKS5 代理
download:
path: /downloads
通过以上配置,FlexGet 将通过指定的 SOCKS5 代理访问 URL。如果有更多具体需求(例如特定的 URL 或认证方式),可以进一步调整配置。
如果你遇到问题,可以提供更多细节(比如代理类型、URL 或错误信息),我可以帮你进一步优化配置!