mirror of
https://github.com/ArvinLovegood/go-stock.git
synced 2025-07-19 00:00:09 +08:00
fix(data):优化数据获取流程并添加错误日志
- 在获取股票价格、财报、市场资讯等数据时,增加了空值判断并记录错误日志 -优化了数据获取流程,提高了代码的健壮性和可维护性- 在 chromedp 上下文中添加了日志记录,便于调试和排查问题
This commit is contained in:
parent
c5fbe5fdae
commit
0006501cc8
@ -93,6 +93,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
messages := SearchStockPriceInfo(stockCode)
|
||||
if messages == nil || len(*messages) == 0 {
|
||||
logger.SugaredLogger.Error("获取股票价格失败")
|
||||
return
|
||||
}
|
||||
price := ""
|
||||
for _, message := range *messages {
|
||||
price += message + ";"
|
||||
@ -106,6 +110,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
messages := GetFinancialReports(stockCode)
|
||||
if messages == nil || len(*messages) == 0 {
|
||||
logger.SugaredLogger.Error("获取股票财报失败")
|
||||
return
|
||||
}
|
||||
for _, message := range *messages {
|
||||
msg = append(msg, map[string]interface{}{
|
||||
"role": "assistant",
|
||||
@ -117,6 +125,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
messages := GetTelegraphList()
|
||||
if messages == nil || len(*messages) == 0 {
|
||||
logger.SugaredLogger.Error("获取市场资讯失败")
|
||||
return
|
||||
}
|
||||
for _, message := range *messages {
|
||||
msg = append(msg, map[string]interface{}{
|
||||
"role": "assistant",
|
||||
@ -128,6 +140,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
messages := SearchStockInfo(stock, "depth")
|
||||
if messages == nil || len(*messages) == 0 {
|
||||
logger.SugaredLogger.Error("获取股票资讯失败")
|
||||
return
|
||||
}
|
||||
for _, message := range *messages {
|
||||
msg = append(msg, map[string]interface{}{
|
||||
"role": "assistant",
|
||||
@ -138,6 +154,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
messages := SearchStockInfo(stock, "telegram")
|
||||
if messages == nil || len(*messages) == 0 {
|
||||
logger.SugaredLogger.Error("获取股票电报资讯失败")
|
||||
return
|
||||
}
|
||||
for _, message := range *messages {
|
||||
msg = append(msg, map[string]interface{}{
|
||||
"role": "assistant",
|
||||
@ -146,7 +166,6 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
||||
}
|
||||
}()
|
||||
wg.Wait()
|
||||
|
||||
msg = append(msg, map[string]interface{}{
|
||||
"role": "user",
|
||||
"content": stock + "分析和总结",
|
||||
@ -233,6 +252,7 @@ func GetFinancialReports(stockCode string) *[]string {
|
||||
chromedp.WithErrorf(logger.SugaredLogger.Errorf),
|
||||
)
|
||||
defer cancel()
|
||||
|
||||
defer func(ctx context.Context) {
|
||||
err := chromedp.Cancel(ctx)
|
||||
if err != nil {
|
||||
|
@ -520,8 +520,11 @@ func SearchStockPriceInfo(stockCode string) *[]string {
|
||||
// 创建一个 chromedp 上下文
|
||||
ctx, cancel := chromedp.NewContext(
|
||||
context.Background(),
|
||||
chromedp.WithLogf(logger.SugaredLogger.Infof),
|
||||
chromedp.WithErrorf(logger.SugaredLogger.Errorf),
|
||||
)
|
||||
defer cancel()
|
||||
|
||||
defer func(ctx context.Context) {
|
||||
err := chromedp.Cancel(ctx)
|
||||
if err != nil {
|
||||
|
Loading…
x
Reference in New Issue
Block a user