Files
xiaohongshu-mcp/browser/browser.go
zy 0e4450b12c refactor: 改进浏览器实例管理,按需创建浏览器实例 (#12)
- 移除全局浏览器单例,改为按需创建浏览器实例
- 添加 configs/browser.go 用于管理无头模式配置
- 更新 service.go 中所有方法,每次调用时创建新的浏览器实例
- 更新测试文件,使用新的浏览器管理方式
- 确保每个浏览器实例使用后正确关闭,避免资源泄漏

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-17 15:30:16 +08:00

28 lines
690 B
Go

package browser
import (
"github.com/sirupsen/logrus"
"github.com/xpzouying/headless_browser"
"github.com/xpzouying/xiaohongshu-mcp/cookies"
)
func NewBrowser(headless bool) *headless_browser.Browser {
opts := []headless_browser.Option{
headless_browser.WithHeadless(headless),
}
// 加载 cookies
cookiePath := cookies.GetCookiesFilePath()
cookieLoader := cookies.NewLoadCookie(cookiePath)
if data, err := cookieLoader.LoadCookies(); err == nil {
opts = append(opts, headless_browser.WithCookies(string(data)))
logrus.Debugf("loaded cookies from filesuccessfully")
} else {
logrus.Warnf("failed to load cookies: %v", err)
}
return headless_browser.New(opts...)
}