File size: 2,612 Bytes
e8baafb
d29dbb0
4f6aeda
0ca1004
f313251
0ca1004
404c329
e8baafb
 
 
 
 
0537230
e8baafb
 
 
c82fdc4
 
f7a6661
00a471b
f313251
00a471b
 
2f9a731
e10393a
 
5ce9101
2f9a731
e10393a
4f6aeda
 
 
 
 
 
 
 
294d631
2f9a731
97e8319
2f9a731
294d631
 
f313251
00a471b
 
e8baafb
 
 
 
 
0537230
e8baafb
9e6bbf4
e8baafb
 
 
9e6bbf4
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import gradio as gr
from huggingface_hub import HfApi, list_files_info
import requests
token = ""
source_dataset = "jbilcke-hf/ai-tube-index"
api = HfApi(token=token)


def find_dataset(author=None):
    s_ist = (api.list_datasets(author=author,search="ai-tube"))
    #print(api.whoami())
    spaces=[]
    out_html=""
    for space in s_ist:
    #for i,space in enumerate(s_ist):
        try:
            #space_ea = space.id.split("/",1)[1]
            spaces.append(f'{space.id}<br>')
            out_html = f'{out_html}<b>{space.id}</b><br>'
            file_box = [info.path for info in list_files_info(f'{space.id}', repo_type="dataset")]
            ai_tube_box = [info.path for info in list_files_info(f'{source_dataset}', repo_type="dataset")]
            for file in file_box:
                if file.startswith("prompt_"):
                    prompt_slug = file.split("prompt_",1)[1].split(".",1)[0]
                    out_html=f'{out_html}<pre>  • {file}</pre>'
                    print(prompt_file)
                    for vid_file in ai_tube_box:
                        vid_slug=vid_file.split("videos/",1)[1].split(".",1)[0]
                        print(vid_file)
                        try:
                            if vid_file.endswith(".json"):
                                r = requests.get(f'https://huggingface.co/datasets/jbilcke-hf/ai-tube-index/raw/main/videos/{vid_slug}.json')
                                #r = requests.get(f'https://huggingface.co/datasets/jbilcke-hf/ai-tube-index/blob/main/videos/00b4bcda-7b4a-40f8-9833-e490425a7b91.mp4')
                                print (r.content)
                                #uid = uuid.uuid4()
                                #file = open(f'{name}/{f_name}','wb')
                                #file.write(r.content)
                        try:
                            if vid_slug == prompt_slug:
                                out_html=f'{out_html}<pre>    + {vid_file}</pre>'
                                
                        except Exception:
                            pass
                    
            #print([info.path for info in list_files_info(f'{space.id}', repo_type="dataset")])
            #print(space.id)
        except Exception as e:
            print(e)
        #s_info=api.space_info(f'{name}/{space}',files_metadata=True)
        #print(s_info)
    print(spaces)
    return(out_html)
with gr.Blocks() as app:
    author = gr.Textbox(label="Author")
    button = gr.Button()
    output = gr.HTML()
    button.click(find_dataset,author,output)
app.launch(show_api=False,share=False)