@@ -21,7 +21,7 @@ import (
21
21
func (d * Javdb ) getFilms (dirName string , urlFunc func (index int ) string ) ([]model.ObjThumb , error ) {
22
22
23
23
// 1. 获取所有影片
24
- javFilms , err := virtual_file .GetFilmsWitchStorage ("javdb" , dirName , urlFunc ,
24
+ javFilms , err := virtual_file .GetFilmsWitchStorage ("javdb" , dirName , dirName , urlFunc ,
25
25
func (urlFunc func (index int ) string , index int , data []model.ObjThumb ) ([]model.ObjThumb , bool , error ) {
26
26
return d .getJavPageInfo (urlFunc , index , data )
27
27
})
@@ -85,7 +85,7 @@ func (d *Javdb) addStar(code string) (model.ObjThumb, error) {
85
85
}
86
86
}
87
87
88
- err = db .CreateFilms ("javdb" , "个人收藏" , []model.ObjThumb {cachingFilm })
88
+ err = db .CreateFilms ("javdb" , "个人收藏" , "个人收藏" , []model.ObjThumb {cachingFilm })
89
89
cachingFilm .Name = virtual_file .AppendFilmName (cachingFilm .Name )
90
90
cachingFilm .Path = "个人收藏"
91
91
@@ -255,7 +255,7 @@ func (d *Javdb) getAiravPageInfo(urlFunc func(index int) string, index int, data
255
255
nextPage := false
256
256
257
257
collector := colly .NewCollector (func (c * colly.Collector ) {
258
- c .SetRequestTimeout (time .Second * 10 )
258
+ c .SetRequestTimeout (time .Second * 20 )
259
259
})
260
260
extensions .RandomUserAgent (collector )
261
261
@@ -388,9 +388,18 @@ func (d *Javdb) getAiravNamingAddr(film model.ObjThumb) (string, model.ObjThumb)
388
388
389
389
collector .OnHTML (".list-group" , func (element * colly.HTMLElement ) {
390
390
391
- url := element .ChildAttr (".my-2 a" , "href" )
392
- if url != "" && strings .Contains (url , "/cn/actor" ) {
393
- actorPageUrl = fmt .Sprintf ("https://airav.io%s&idx=" , url )
391
+ urls := element .ChildAttrs (".my-2 a" , "href" )
392
+
393
+ var actors []string
394
+ for _ , url := range urls {
395
+ if strings .Contains (url , "/cn/actor" ) {
396
+ actors = append (actors , url )
397
+ }
398
+ }
399
+
400
+ // 仅当演员只有一个的时候才进行爬取
401
+ if len (actors ) == 1 {
402
+ actorPageUrl = fmt .Sprintf ("https://airav.io%s&idx=" , actors [0 ])
394
403
}
395
404
396
405
})
@@ -436,7 +445,7 @@ func (d *Javdb) getAiravNamingFilms(films []model.ObjThumb, dirName string) (map
436
445
437
446
if addr != "" {
438
447
// 2.2.2 爬取该主演所有作品
439
- namingFilms , err := virtual_file .GetFilmsWitchStorage ("airav" , dirName , func (index int ) string {
448
+ namingFilms , err := virtual_file .GetFilmsWitchStorage ("airav" , dirName , addr , func (index int ) string {
440
449
return addr + strconv .Itoa (index )
441
450
},
442
451
func (urlFunc func (index int ) string , index int , data []model.ObjThumb ) ([]model.ObjThumb , bool , error ) {
0 commit comments