Przeglądaj źródła

重构

Signed-off-by: allan716 <[email protected]>
allan716 4 lat temu
rodzic
commit
d52d56e62c

+ 15 - 28
sub_supplier/subhd/subhd.go

@@ -52,7 +52,7 @@ func (s Supplier) GetReqParam() common.ReqParam{
 }
 
 func (s Supplier) GetSubListFromFile4Movie(filePath string) ([]common.SupplierSubInfo, error){
-	return s.GetSubListFromFile(filePath)
+	return s.getSubListFromFile(filePath)
 }
 
 func (s Supplier) GetSubListFromFile4Series(seriesPath string) ([]common.SupplierSubInfo, error) {
@@ -63,7 +63,7 @@ func (s Supplier) GetSubListFromFile4Anime(animePath string) ([]common.SupplierS
 	panic("not implemented")
 }
 
-func (s Supplier) GetSubListFromFile(filePath string) ([]common.SupplierSubInfo, error) {
+func (s Supplier) getSubListFromFile(filePath string) ([]common.SupplierSubInfo, error) {
 	/*
 		虽然是传入视频文件路径,但是其实需要读取对应的视频文件目录下的
 		movie.xml 以及 *.nfo,找到 IMDB id
@@ -88,7 +88,7 @@ func (s Supplier) GetSubListFromFile(filePath string) ([]common.SupplierSubInfo,
 
 	if imdbInfo.ImdbId != "" {
 		// 先用 imdb id 找
-		subInfoList, err = s.GetSubListFromKeyword(imdbInfo.ImdbId)
+		subInfoList, err = s.getSubListFromKeyword(imdbInfo.ImdbId)
 		if err != nil {
 			// 允许的错误,跳过,继续进行文件名的搜索
 			s.log.Errorln(s.GetSupplierName(), "keyword:", imdbInfo.ImdbId)
@@ -101,7 +101,7 @@ func (s Supplier) GetSubListFromFile(filePath string) ([]common.SupplierSubInfo,
 	}
 	// 如果没有,那么就用文件名查找
 	searchKeyword := model.VideoNameSearchKeywordMaker(info.Title, imdbInfo.Year)
-	subInfoList, err = s.GetSubListFromKeyword(searchKeyword)
+	subInfoList, err = s.getSubListFromKeyword(searchKeyword)
 	if err != nil {
 		s.log.Errorln(s.GetSupplierName(), "keyword:", searchKeyword)
 		return nil, err
@@ -110,10 +110,10 @@ func (s Supplier) GetSubListFromFile(filePath string) ([]common.SupplierSubInfo,
 	return subInfoList, nil
 }
 
-func (s Supplier) GetSubListFromKeyword(keyword string) ([]common.SupplierSubInfo, error) {
+func (s Supplier) getSubListFromKeyword(keyword string) ([]common.SupplierSubInfo, error) {
 
 	var subInfos  []common.SupplierSubInfo
-	detailPageUrl, err := s.Step0(keyword)
+	detailPageUrl, err := s.step0(keyword)
 	if err != nil {
 		return nil, err
 	}
@@ -121,7 +121,7 @@ func (s Supplier) GetSubListFromKeyword(keyword string) ([]common.SupplierSubInf
 	if detailPageUrl == "" {
 		return nil, nil
 	}
-	subList, err := s.Step1(detailPageUrl)
+	subList, err := s.step1(detailPageUrl)
 	if err != nil {
 		return nil, err
 	}
@@ -138,7 +138,7 @@ func (s Supplier) GetSubListFromKeyword(keyword string) ([]common.SupplierSubInf
 	}
 
 	for i, item := range subList {
-		hdContent, err := s.Step2Ex(browser, item.Url)
+		hdContent, err := s.step2Ex(browser, item.Url)
 		if err != nil {
 			return nil, err
 		}
@@ -148,8 +148,8 @@ func (s Supplier) GetSubListFromKeyword(keyword string) ([]common.SupplierSubInf
 	return subInfos, nil
 }
 
-// Step0 找到这个影片的详情列表
-func (s Supplier) Step0(keyword string) (string, error) {
+// step0 找到这个影片的详情列表
+func (s Supplier) step0(keyword string) (string, error) {
 
 	result, err := s.httpGet(fmt.Sprintf(common.SubSubHDSearchUrl, url.QueryEscape(keyword)))
 	if err != nil {
@@ -195,8 +195,9 @@ func (s Supplier) Step0(keyword string) (string, error) {
 	//}
 	//return matched[0][1], nil
 }
-// Step1 获取影片的详情字幕列表
-func (s Supplier) Step1(detailPageUrl string) ([]HdListItem, error) {
+
+// step1 获取影片的详情字幕列表
+func (s Supplier) step1(detailPageUrl string) ([]HdListItem, error) {
 	detailPageUrl = model.AddBaseUrl(common.SubSubHDRootUrl, detailPageUrl)
 	result, err := s.httpGet(detailPageUrl)
 	if err != nil {
@@ -253,8 +254,8 @@ func (s Supplier) Step1(detailPageUrl string) ([]HdListItem, error) {
 	return lists, nil
 }
 
-// Step2Ex 下载字幕 过防水墙
-func (s Supplier) Step2Ex(browser *rod.Browser, subDownloadPageUrl string) (*HdContent, error)  {
+// step2Ex 下载字幕 过防水墙
+func (s Supplier) step2Ex(browser *rod.Browser, subDownloadPageUrl string) (*HdContent, error)  {
 	subDownloadPageUrl = model.AddBaseUrl(common.SubSubHDRootUrl, subDownloadPageUrl)
 	// TODO 需要提取出 rod 的超时时间和重试次数,注意,这里的超时时间,在调试的时候也算进去的,所以···
 	page, err := model.NewPageNavigate(browser, subDownloadPageUrl, 300*time.Second, 5)
@@ -451,20 +452,6 @@ func (s Supplier) httpGet(url string) (string, error) {
 	return resp.String(), nil
 }
 
-//httpPost  没用了,弃了
-func (s Supplier) httpPost(url string, postData map[string]string, referer string) (string, error) {
-
-	s.reqParam.Referer = referer
-	httpClient := model.NewHttpClient(s.reqParam)
-	resp, err := httpClient.R().
-		SetFormData(postData).
-		Post(url)
-	if err != nil {
-		return "", err
-	}
-	return resp.String(), nil
-}
-
 type HdListItem struct {
 	Url        string `json:"url"`
 	BaseUrl    string `json:"baseUrl"`

+ 1 - 1
sub_supplier/subhd/subhd_test.go

@@ -13,7 +13,7 @@ func TestSupplier_GetSubListFromFile(t *testing.T) {
 	//movie1 := "X:\\电影\\机动战士Z高达:星之继承者 (2005)\\机动战士Z高达:星之继承者 (2005) 1080p TrueHD.mkv"
 	//movie1 := "X:\\连续剧\\The Bad Batch\\Season 1\\The Bad Batch - S01E01 - Aftermath WEBDL-1080p.mkv"
 	shooter := NewSupplier()
-	outList, err := shooter.GetSubListFromFile(movie1)
+	outList, err := shooter.getSubListFromFile(movie1)
 	if err != nil {
 		t.Error(err)
 	}

+ 15 - 15
sub_supplier/zimuku/zimuku.go

@@ -59,13 +59,13 @@ func (s Supplier) GetSubListFromFile4Series(seriesInfo *common.SeriesInfo) ([]co
 	for value := range seriesInfo.SeasonDict {
 		// 第一级界面,找到影片的详情界面
 		keyword := seriesInfo.Name + " 第" + zh.Uint64(value).String() + "季"
-		filmDetailPageUrl, err := s.Step0(keyword)
+		filmDetailPageUrl, err := s.step0(keyword)
 		if err != nil {
 			s.log.Errorln(keyword)
 			return nil, err
 		}
 		// 第二级界面,有多少个字幕
-		subResult, err := s.Step1(filmDetailPageUrl)
+		subResult, err := s.step1(filmDetailPageUrl)
 		if err != nil {
 			s.log.Errorln(filmDetailPageUrl)
 			return nil, err
@@ -144,12 +144,12 @@ func (s Supplier) getSubListFromKeyword(keyword string) ([]common.SupplierSubInf
 
 	var outSubInfoList []common.SupplierSubInfo
 	// 第一级界面,找到影片的详情界面
-	filmDetailPageUrl, err := s.Step0(keyword)
+	filmDetailPageUrl, err := s.step0(keyword)
 	if err != nil {
 		return nil, err
 	}
 	// 第二级界面,有多少个字幕
-	subResult, err := s.Step1(filmDetailPageUrl)
+	subResult, err := s.step1(filmDetailPageUrl)
 	if err != nil {
 		return nil, err
 	}
@@ -204,7 +204,7 @@ func (s Supplier) whichSubInfoNeedDownload(subInfos SubInfos, err error) []commo
 
 	var outSubInfoList = make([]common.SupplierSubInfo, 0)
 	for i := range subInfos {
-		err = s.Step2(&subInfos[i])
+		err = s.step2(&subInfos[i])
 		if err != nil {
 			s.log.Error(err)
 			continue
@@ -235,7 +235,7 @@ func (s Supplier) whichSubInfoNeedDownload(subInfos SubInfos, err error) []commo
 
 	// 第四级界面,具体字幕下载
 	for i, subInfo := range tmpSubInfo {
-		fileName, data, err := s.Step3(subInfo.SubDownloadPageUrl)
+		fileName, data, err := s.step3(subInfo.SubDownloadPageUrl)
 		if err != nil {
 			s.log.Error(err)
 			continue
@@ -247,8 +247,8 @@ func (s Supplier) whichSubInfoNeedDownload(subInfos SubInfos, err error) []commo
 	return outSubInfoList
 }
 
-// Step0 先在查询界面找到字幕对应第一个影片的详情界面,需要解决自定义错误 ZiMuKuSearchKeyWordStep0DetailPageUrlNotFound
-func (s Supplier) Step0(keyword string) (string, error) {
+// step0 先在查询界面找到字幕对应第一个影片的详情界面,需要解决自定义错误 ZiMuKuSearchKeyWordStep0DetailPageUrlNotFound
+func (s Supplier) step0(keyword string) (string, error) {
 	httpClient := model.NewHttpClient(s.reqParam)
 	// 第一级界面,有多少个字幕
 	resp, err := httpClient.R().
@@ -270,8 +270,8 @@ func (s Supplier) Step0(keyword string) (string, error) {
 	return filmDetailPageUrl, nil
 }
 
-// Step1 分析详情界面,找到有多少个字幕
-func (s Supplier) Step1(filmDetailPageUrl string) (SubResult, error) {
+// step1 分析详情界面,找到有多少个字幕
+func (s Supplier) step1(filmDetailPageUrl string) (SubResult, error) {
 	filmDetailPageUrl = model.AddBaseUrl(common.SubZiMuKuRootUrl, filmDetailPageUrl)
 	httpClient := model.NewHttpClient(s.reqParam)
 	resp, err := httpClient.R().
@@ -365,8 +365,8 @@ func (s Supplier) Step1(filmDetailPageUrl string) (SubResult, error) {
 	return subResult, nil
 }
 
-// Step2 第二级界面,单个字幕详情,需要判断 ZiMuKuDownloadUrlStep2NotFound 这个自定义错误
-func (s Supplier) Step2(subInfo *SubInfo) error {
+// step2 第二级界面,单个字幕详情,需要判断 ZiMuKuDownloadUrlStep2NotFound 这个自定义错误
+func (s Supplier) step2(subInfo *SubInfo) error {
 
 	detailUrl := model.AddBaseUrl(common.SubZiMuKuRootUrl, subInfo.DetailUrl)
 	httpClient := model.NewHttpClient(s.reqParam)
@@ -390,8 +390,8 @@ func (s Supplier) Step2(subInfo *SubInfo) error {
 	return nil
 }
 
-// Step3 第三级界面,具体字幕下载 ZiMuKuDownloadUrlStep3NotFound ZiMuKuDownloadUrlStep3AllFailed
-func (s Supplier) Step3(subDownloadPageUrl string) (string, []byte, error) {
+// step3 第三级界面,具体字幕下载 ZiMuKuDownloadUrlStep3NotFound ZiMuKuDownloadUrlStep3AllFailed
+func (s Supplier) step3(subDownloadPageUrl string) (string, []byte, error) {
 
 	subDownloadPageUrl = model.AddBaseUrl(common.SubZiMuKuRootUrl, subDownloadPageUrl)
 	httpClient := model.NewHttpClient(s.reqParam)
@@ -413,7 +413,7 @@ func (s Supplier) Step3(subDownloadPageUrl string) (string, []byte, error) {
 	for i := 0; i < len(matched); i++ {
 		data, filename, err = model.DownFile(model.AddBaseUrl(common.SubZiMuKuRootUrl, matched[i][1]), s.reqParam)
 		if err != nil {
-			s.log.Errorln("ZiMuKu Step3 DownloadFile", err)
+			s.log.Errorln("ZiMuKu step3 DownloadFile", err)
 			continue
 		}
 		return filename, data, nil