Spaces:
Paused
Paused
| using System; | |
| using System.Net.Http; | |
| using System.Text.Json; | |
| using System.Threading.Tasks; | |
| using System.Collections.Generic; | |
| class Program { | |
| static async Task Main(string[] args) { | |
| if (args.Length == 0) { | |
| Console.WriteLine("[]"); | |
| return; | |
| } | |
| string query = Uri.EscapeDataString(args[0]); | |
| string url = $"https://huggingface.co/api/models?search={query}&limit=6"; | |
| using HttpClient client = new HttpClient(); | |
| client.DefaultRequestHeaders.Add("User-Agent", "CustomVMResolver/1.0"); | |
| try { | |
| string response = await client.GetStringAsync(url); | |
| using JsonDocument doc = JsonDocument.Parse(response); | |
| var results = new List<object>(); | |
| foreach (var item in doc.RootElement.EnumerateArray()) { | |
| string id = item.GetProperty("id").GetString() ?? ""; | |
| string author = item.TryGetProperty("author", out var authProp) ? (authProp.GetString() ?? "") : ""; | |
| int likes = item.TryGetProperty("likes", out var likeProp) ? (likeProp.ValueKind == JsonValueKind.Number ? likeProp.GetInt32() : 0) : 0; | |
| int downloads = item.TryGetProperty("downloads", out var downProp) ? (downProp.ValueKind == JsonValueKind.Number ? downProp.GetInt32() : 0) : 0; | |
| results.Add(new { id, author, likes, downloads }); | |
| } | |
| Console.WriteLine(JsonSerializer.Serialize(results)); | |
| } catch { | |
| Console.WriteLine("[]"); | |
| } | |
| } | |
| } | |