Python:使用 wget 的子进程调用 - 缺少方案

Python: Subprocess call with wget - Scheme Missing

我正在尝试从 python 脚本中 运行 命令 wget。 follow wget 在命令行上输入时工作得很好,但是当我尝试使用

时它给了我一个方案丢失错误
subprocess.call([])

我不太确定如何解决它,我已经尝试了其他问题的所有解决方案,但 none 似乎有效。

FILTER_ID = 10000
USERNAME = 'myusername'
PASSWORD = 'mypassword'

JIRA_URL = '"https://myjiraserver.com/sr/jira.issueviews:searchrequest-excel-all-fields/%d/SearchRequest-%d.xls?tempMax=1000&os_username=%s&os_password=%s"' % (FILTER_ID, FILTER_ID, USERNAME, PASSWORD)

OUTPUT = 'jira_issues.xls'
PARAMETER = '--no-check-certificate'
subprocess.call(['wget', '-O', OUTPUT, JIRA_URL, PARAMETER])

我想知道将它用双引号或单引号引起来是否会有所不同,所以我尝试了两种方法,但它仍然给我同样的错误。 subprocess.call 是正确的选择吗?

提前谢谢你。 :)

尝试从 JIRA_URL 中删除引号。您不需要使用引号将参数分组到 subprocess.call,因为它们已经拆分到您传入的参数列表中。

FILTER_ID = 10000
USERNAME = 'myusername'
PASSWORD = 'mypassword'

# No extra quotes around the URL
JIRA_URL = 'https://myjiraserver.com/sr/jira.issueviews:searchrequest-excel-all-fields/%d/SearchRequest-%d.xls?tempMax=1000&os_username=%s&os_password=%s' % (FILTER_ID, FILTER_ID, USERNAME, PASSWORD)

OUTPUT = 'jira_issues.xls'
PARAMETER = '--no-check-certificate'
subprocess.call(['wget', '-O', OUTPUT, JIRA_URL, PARAMETER])