File size: 1,155 Bytes
89df459
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import gradio as gr
import subprocess
import os

# Função para baixar o clipe da Twitch
def download_twitch_clip(url, auth_token=None):
    # Comando básico para download
    command = ["twitch-dl", "download", url]

    # Adiciona o token de autenticação, se fornecido
    if auth_token:
        command.extend(["-a", auth_token])

    # Executa o comando de download
    subprocess.run(command)

    # Extrai o ID do vídeo da URL para criar o nome do arquivo
    video_id = url.split('/')[-1]
    file_name = f"{video_id}.mkv"  # Assumindo que o formato padrão é mkv

    return file_name

# Interface Gradio
def gradio_interface(url, auth_token):
    file_name = download_twitch_clip(url, auth_token)
    return file_name

iface = gr.Interface(
    fn=gradio_interface,
    inputs=[
        gr.inputs.Textbox(label="URL do Clipe da Twitch"),
        gr.inputs.Textbox(label="Token de Autenticação (opcional)", optional=True)
    ],
    outputs="video",
    examples=[
        ["https://www.twitch.tv/videos/221837124", None],
        ["https://www.twitch.tv/videos/221837124", "seu_auth_token"]
    ]
)

# Executar a interface
iface.launch()