使用youtube_uploader_selenium传视频遇Timeout ValueError,求原因及解决
解决YouTube上传脚本的Timeout ValueError问题
错误原因
这个错误的核心是依赖库版本不兼容:你使用的Python3.13是较新的版本,而youtube_uploader_selenium项目依赖的selenium_firefox、selenium_browser等库还没适配Python3.13和新版urllib3。最终导致代码向urllib3传递了一个无效的超时对象(不是整数、浮点数或None),触发了ValueError。
解决方案
1. 降级Python版本(最稳妥方案)
Python3.13发布时间短,大量第三方库未完成适配,建议降级到Python3.10或3.11(长期支持版,兼容性最优)。
2. 重新配置虚拟环境
- 删除当前的
.venv文件夹 - 用新安装的Python创建虚拟环境:
python -m venv .venv - 激活虚拟环境(Windows系统):
.venv\Scripts\activate - 进入
youtube_uploader_selenium文件夹,安装适配当前Python版本的依赖:pip install -r requirements.txt
- 删除当前的
3. 修正run.py的逻辑问题
你原代码里的
system('.venv\\Scripts\\activate')无效——每个system调用是独立进程,激活环境的操作仅在该进程内生效,后续命令仍使用系统Python。替换为以下代码:import subprocess import sys vid = input("输入视频文件路径: ") thumb = input("输入缩略图文件路径: ") meta = input("输入元数据文件路径: ") # 使用当前虚拟环境的Python执行上传脚本 subprocess.run([ sys.executable, "youtube_uploader_selenium/upload.py", "--video", vid, "-t", thumb, "--meta", meta ])4. 检查Firefox与GeckoDriver
确保安装Firefox浏览器,且GeckoDriver版本与Firefox版本匹配,同时将GeckoDriver所在路径添加到系统环境变量
PATH中。
内容的提问来源于stack exchange,提问作者qweenkie
相关产品推荐
相关产品推荐

