Я использую эту программу, которая загружает видео на YouTube, и у меня постоянно появляется эта ошибка "upload_video.py: ошибка: нераспознанные аргументы: Легенд 09-10-2019 19-59-51-771.mp4 '" Это странно потому что, когда я запускаю команду из консоли, она прекрасно работает ...
import tkinter as tk
#import vimeo
from tkinter import ttk
from tkinter.filedialog import askopenfilename
import requests
from selenium import webdriver
import json
import os
import subprocess
import shutil
def main():
root = tk.Tk()
root.config(width=800, height=600)
root.title("Infolink Poster por Martin Schere")
root.resizable(width=False, height=False)
root.iconbitmap('Icono.ico')
canvas = tk.Canvas(root, height=600, width=800).pack()
frame = tk.Frame(root, bg="#D8D7D7")
frame.place(relwidth=1, relheight=2)
l_título = tk.Label(frame, text="Título:", font="Impact", bg="#D8D7D7")
l_título.place(x=10, y=20)
e_título = tk.Entry(frame, font="Calibri", width=34)
e_título.place(x=58, y=21)
l_descripcion = tk.Label(frame, text="Descripción:", font="Impact", bg="#D8D7D7")
l_descripcion.place(x=10, y=60)
e_descripcion = tk.Text(frame, font="Calibri", width=40, height=10)
e_descripcion.place(x=12, y=90)
l_archivo = tk.Label(frame, text="Archivo:", font="Impact", bg="#D8D7D7")
l_archivo.place(x=10, y=303)
def selarchivo():
global archivo
archivo = askopenfilename(title="Seleccioná un video o audio")
#if archivo == "" and not placed:
#l_archivo_selec = tk.Label(frame, text=("Nada seleccionado"), font="Impact")
#l_archivo_selec.place(x=10, y=353)
if len(archivo) > 50:
l_archivo_selec = tk.Label(frame, text=("Seleccionado:\n" + archivo[:50] + "..."), font="Impact")
l_archivo_selec.place(x=10, y=353)
elif not len(archivo) < 14:
l_archivo_selec = tk.Label(frame, text=("Seleccionado:\n" + archivo), font="Impact")
l_archivo_selec.place(x=10, y=353)
l_etiquetas = tk.Label(frame, text="Etiquetas:", font="Impact", bg="#D8D7D7")
l_etiquetas.place(x=400, y=60)
t_etiquetas= tk.Text(frame, font="Calibri", width=40, height=10)
t_etiquetas.place(x=400, y=90)
var = tk.StringVar(root)
l_categoria = tk.Label(frame, text="Categoría:", font="Impact", bg="#D8D7D7")
l_categoria.place(x=400, y=20)
op_categoria = tk.OptionMenu(frame, var, "Agro", "Ganadería", "Regionales", "Maquinaria", "Ferias", "Audio")
op_categoria.place(x=490, y=20)
b_archivo = tk.Button(frame, command=selarchivo, text="Select file", font="Calibri")
b_archivo.place(x=90, y=300)
def sumbit():
datos = {
"tit" : str(e_título.get()),
"desc" : str(e_descripcion.get("1.0", 'end-1c')),
"arc" : archivo,
"etiq" : str(t_etiquetas.get("1.0", "end-1c"))
}
print(datos["arc"])
shutil.copy(datos["arc"], "C:\\Users\\Martín\\Desktop\\YoutubeHacker\\youtube-upload\\youtube_upload")
file = datos["arc"].split("/")
print(file[-1])
command = "python upload_video.py --file='{}'".format(file[-1])
print(command)
subprocess.call(command, shell=True)
sumbit = tk.Button(frame, command=sumbit, text="Publish", font="Impact", width=38)
sumbit.place(x=405, y=300)
root.mainloop()
if __name__ == "__main__":
main()
Команда - python upload_video.py --file='file.mp4'
, и она прекрасно загружается. Чтобы протестировать программу, необходимо нажать «Выбрать файл», а затем «Publi sh». Тогда это вызовет ошибку.