package config import ( "encoding/json" "log" "os" ) type Provider struct { Url string Throttle int Range string After_date string Cmd string Cookies_file string Opml_file string Quality string Output_path_template string Po_token string Verbose bool Bgutil_server string } type Config struct { Out_dir string Provider map[string]Provider Dry_run bool Daemon bool } func Load(filepath string) (Config, error) { data, err := os.ReadFile(filepath) if err != nil { panic(err) } cfg := Config{} err = json.Unmarshal(data, &cfg) if err != nil { panic(err) } log.Println("Loaded config:") log.Printf("%+v\n", cfg) return cfg, err }