ECCV2022/Leaderboard
0
1import os2import requests3import pandas as pd4import gradio as gr5from huggingface_hub.hf_api import SpaceInfo6from pathlib import Path7 8 9path = f"https://huggingface.co/api/spaces" 10 11 12def get_ECCV_spaces():13 r = requests.get(path)14 d = r.json()15 spaces = [SpaceInfo(**x) for x in d]16 blocks_spaces = {}17 for i in range(0,len(spaces)):18 if spaces[i].id.split('/')[0] == 'ECCV2022' and hasattr(spaces[i], 'likes') and spaces[i].id != 'ECCV2022/Leaderboard' and spaces[i].id != 'ECCV2022/README':19 blocks_spaces[spaces[i].id]=spaces[i].likes20 df = pd.DataFrame(21 [{"Spaces_Name": Spaces, "likes": likes} for Spaces,likes in blocks_spaces.items()])22 df = df.sort_values(by=['likes'],ascending=False)23 return df24 25 26block = gr.Blocks()27 28with block: 29 gr.Markdown("""Leaderboard for the most popular ECCV 2022 Spaces. To learn more and join, see <a href="https://huggingface.co/ECCV2022" target="_blank" style="text-decoration: underline">ECCV 2022 Event</a>""")30 with gr.Tabs():31 with gr.TabItem("ECCV 2022 Leaderboard"):32 with gr.Row():33 data = gr.Dataframe(type="pandas")34 with gr.Row():35 data_run = gr.Button("Refresh")36 data_run.click(get_ECCV_spaces, inputs=None, outputs=data)37 38 block.load(get_ECCV_spaces, inputs=None, outputs=data) 39block.launch()