Spaces:
Sleeping
Sleeping
import os | |
import tempfile | |
import gradio as gr | |
from huggingface_hub import HfApi | |
# νκ²½ λ³μμμ Hugging Face ν ν° μ½κΈ° | |
hf_token = os.getenv("HF_TOKEN") | |
# Hugging Face API μ΄κΈ°ν | |
api = HfApi() | |
def upload_file_to_hf_space(uploaded_file): | |
user_id = "seawolf2357" | |
space_name = "video" | |
repo_id = f"{user_id}/{space_name}" | |
# μμ νμΌ μμ± λ° μ λ‘λλ νμΌ λ°μ΄ν° μ°κΈ° | |
with tempfile.NamedTemporaryFile(delete=False, suffix='.mp4') as tmp_file: | |
# Gradio 2.0 μ΄μμμλ uploaded_fileμ΄ νμΌμ λ°μ΄λ리 λ°μ΄ν°λ₯Ό μ§μ μ 곡 | |
tmp_file.write(uploaded_file) | |
file_path = tmp_file.name | |
# Hugging Face Spacesμ νμΌ μ λ‘λ | |
api.upload_file( | |
path_or_fileobj=file_path, | |
path_in_repo=os.path.basename(file_path), | |
repo_id=repo_id, | |
token=hf_token, | |
) | |
# μ λ‘λλ νμΌμ URL λ°ν | |
uploaded_file_url = f"https://huggingface.co/spaces/{repo_id}/blob/main/{os.path.basename(file_path)}" | |
os.unlink(file_path) # μμ νμΌ μμ | |
return uploaded_file_url | |
# Gradio μΈν°νμ΄μ€ μ€μ λ° μ€ν | |
iface = gr.Interface( | |
fn=upload_file_to_hf_space, | |
inputs=gr.File(label="Upload your MP4 file"), | |
outputs="text", | |
title="MP4 File Upload to Hugging Face Spaces", | |
description="Upload an MP4 file and get its URL in Hugging Face Spaces. Please ensure the file is an MP4 format." | |
) | |
iface.launch() | |