Browse Source

update

developer
appolli 5 months ago
parent
commit
65a091aad9
  1. 68
      main_program/keyword_analyse/KeywordAnalyseService.go

68
main_program/keyword_analyse/KeywordAnalyseService.go

@ -6,6 +6,7 @@ import (
"main_program/entity" "main_program/entity"
service "main_program/service" service "main_program/service"
"strings" "strings"
"time"
) )
type keywordAnalyse struct{} type keywordAnalyse struct{}
@ -32,35 +33,56 @@ func (m *keywordAnalyse) Start() {
return return
} }
} }
continueFlag := true
for continueFlag {
config.Logger.Infof("需要解析的VideoId:%s", videoId)
config.Logger.Infof("需要解析的VideoId:%s", videoId) // 根据videoId获取channel
video, err := service.VideoService.QueryOneByVideoId(videoId)
if err != nil {
config.Logger.Infof("获取video失败,videoId:%s", videoId)
}
// 根据videoId获取channel // 根据channelId获取channel
video, err := service.VideoService.QueryOneByVideoId(videoId) channel, err := service.ChannelService.QueryOneByChannelId(video.ChannelId)
if err != nil { if err != nil {
config.Logger.Infof("获取video失败,videoId:%s", videoId) config.Logger.Infof("获取Channel失败,channelId:%s", video.ChannelId)
} }
// 根据channelId获取channel // 根据region获取关键字
channel, err := service.ChannelService.QueryOneByChannelId(video.ChannelId) keywords, err := service.KeywordService.QueryKeywordsByRegion(channel.Region)
if err != nil { if err != nil {
config.Logger.Infof("获取Channel失败,channelId:%s", video.ChannelId) config.Logger.Infof("获取keywords失败,region:%s", channel.Region)
} }
// 根据region获取关键字 // 获取所有srtFile
keywords, err := service.KeywordService.QueryKeywordsByRegion(channel.Region) srtFiles, err := service.SrtFileService.QuerySrtFilesByVideoId(videoId)
if err != nil { if err != nil {
config.Logger.Infof("获取keywords失败,region:%s", channel.Region) config.Logger.Infof("获取srtFiles失败,videoId:%s", videoId)
} }
for i := 0; i < len(srtFiles); i++ {
analyse(srtFiles[i], keywords)
}
// 获取所有srtFile // 5秒后循环获取
srtFiles, err := service.SrtFileService.QuerySrtFilesByVideoId(videoId) config.Logger.Info("5秒后循环获取")
if err != nil { time.Sleep(5 * time.Second)
config.Logger.Infof("获取srtFiles失败,videoId:%s", videoId) if common.AnalyseRegion == "" {
} videoId, err = service.SrtFileService.QueryOneNotScanVideoId()
for i := 0; i < len(srtFiles); i++ { if err != nil {
analyse(srtFiles[i], keywords) config.Logger.Info("没有需要解析的SrtFile...")
continueFlag = false
}
} else {
config.Logger.Info("通过common.AnalyseRegion获取VideoId")
videoId, err = service.SrtFileService.QueryOneNotScanVideoIdByRegion(common.AnalyseRegion)
if err != nil {
config.Logger.Info("没有需要解析的SrtFile...")
continueFlag = false
}
}
} }
} }
func analyse(srtFile entity.Srtfile, keywords []entity.Keyword) { func analyse(srtFile entity.Srtfile, keywords []entity.Keyword) {

Loading…
Cancel
Save