mirror of
https://github.com/ArvinLovegood/go-stock.git
synced 2025-07-19 00:00:09 +08:00
56 lines
1.6 KiB
Go
56 lines
1.6 KiB
Go
package data
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"github.com/go-resty/resty/v2"
|
|
"go-stock/backend/logger"
|
|
"time"
|
|
)
|
|
|
|
// @Author spark
|
|
// @Date 2025/6/28 21:02
|
|
// @Desc
|
|
// -----------------------------------------------------------------------------------
|
|
type SearchStockApi struct {
|
|
words string
|
|
}
|
|
|
|
func NewSearchStockApi(words string) *SearchStockApi {
|
|
return &SearchStockApi{words: words}
|
|
}
|
|
func (s SearchStockApi) SearchStock() map[string]any {
|
|
url := "https://np-tjxg-g.eastmoney.com/api/smart-tag/stock/v3/pw/search-code"
|
|
resp, err := resty.New().SetTimeout(time.Duration(30)*time.Second).R().
|
|
SetHeader("Host", "np-tjxg-g.eastmoney.com").
|
|
SetHeader("Origin", "https://xuangu.eastmoney.com").
|
|
SetHeader("Referer", "https://xuangu.eastmoney.com/").
|
|
SetHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0").
|
|
SetHeader("Content-Type", "application/json").
|
|
SetBody(fmt.Sprintf(`{
|
|
"keyWord": "%s",
|
|
"pageSize": 50000,
|
|
"pageNo": 1,
|
|
"fingerprint": "e38b5faabf9378c8238e57219f0ebc9b",
|
|
"gids": [],
|
|
"matchWord": "",
|
|
"timestamp": "1751113883290349",
|
|
"shareToGuba": false,
|
|
"requestId": "8xTWgCDAjvQ5lmvz5mDA3Ydk2AE4yoiJ1751113883290",
|
|
"needCorrect": true,
|
|
"removedConditionIdList": [],
|
|
"xcId": "xc0af28549ab330013ed",
|
|
"ownSelectAll": false,
|
|
"dxInfo": [],
|
|
"extraCondition": ""
|
|
}`, s.words)).Post(url)
|
|
if err != nil {
|
|
logger.SugaredLogger.Errorf("SearchStock-err:%+v", err)
|
|
return map[string]any{}
|
|
}
|
|
respMap := map[string]any{}
|
|
json.Unmarshal(resp.Body(), &respMap)
|
|
//logger.SugaredLogger.Infof("resp:%+v", respMap["data"])
|
|
return respMap
|
|
}
|