39 lines
977 B
Go
39 lines
977 B
Go
package configs
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
)
|
|
|
|
// Config 应用配置
|
|
type Config struct {
|
|
RootPath string
|
|
OfficialNamesHead string
|
|
Headers map[string]string
|
|
}
|
|
|
|
// NewConfig 创建新的配置实例
|
|
func NewConfig() *Config {
|
|
// 获取当前工作目录
|
|
rootDir, err := os.Getwd()
|
|
if err != nil {
|
|
rootDir = "."
|
|
}
|
|
|
|
// 确保数据目录存在
|
|
dataDir := filepath.Join(rootDir, "data")
|
|
if _, err := os.Stat(dataDir); os.IsNotExist(err) {
|
|
os.MkdirAll(dataDir, 0755)
|
|
}
|
|
|
|
return &Config{
|
|
RootPath: rootDir + "/",
|
|
OfficialNamesHead: "data/official_accounts/",
|
|
Headers: map[string]string{
|
|
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
|
|
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8",
|
|
"Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
|
|
},
|
|
}
|
|
}
|