python调用you-get出现错误

在电脑cmd用you-get可以爬取到视频,但在python用subprocess.call执行同样语句却出现问题,you-get: error: unrecognized arguments。

命令参数不识别
是不是命令里的路径没有转义斜杠或者路径有空格,没有用引号包裹。

讯飞星火提供:
这个问题可能是由于在Python中使用subprocess.call时,命令行参数的传递方式与在cmd中不同导致的。你可以尝试将you-get的命令行参数用列表的形式传递给subprocess.call,如下所示:

import subprocess

cmd = ["you-get", "视频链接"]
subprocess.call(cmd)


请将"视频链接"替换为你想要下载的视频的实际链接。

【以下回答由 GPT 生成】

问题解答:

首先,你可以尝试使用subprocess.call函数的另外一种形式subprocess.call(["you-get", "视频链接"])来调用you-get命令。这可以避免字符串参数中的转义问题。例如:

import subprocess

video_url = "视频链接"
subprocess.call(["you-get", video_url])

如果你还是遇到同样的错误"unrecognized arguments",那可能是因为你没有将视频链接正确地传递给you-get命令。你可以尝试打印出完整的命令行语句,以便检查是否有语法错误。例如:

import subprocess

video_url = "视频链接"
command = ["you-get", video_url]
print(" ".join(command))  # 打印出完整的命令行语句

subprocess.call(command)

如果你发现完整的命令行语句没有问题,那可能是you-get程序没有正确安装或配置。你可以尝试在cmd中手动执行you-get命令,检查是否有任何错误消息。如果你在cmd中也遇到了同样的错误,那可能是you-get的版本问题,你可以尝试更新you-get到最新版本。你可以使用以下命令升级you-get:

pip install --upgrade you-get

如果你的问题还是没有解决,那可能是you-get不支持你当前的系统或环境。你可以尝试找到you-get的文档或支持论坛,看看是否有关于特定系统或环境的限制或解决方案。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^