@@ -50,25 +50,25 @@ export type LoaderCrawlFileDetail = CrawlFileDetailConfig & LoaderHasConfig
50
50
51
51
// Create config
52
52
interface CrawlPageConfigOriginal {
53
- crawlDetails : CrawlPageDetailConfig [ ]
53
+ detailTargets : CrawlPageDetailConfig [ ]
54
54
intervalTime : IntervalTime | undefined
55
55
}
56
56
57
- type CrawlPageConfig = Omit < CrawlPageConfigOriginal , 'crawlDetails ' > & {
58
- crawlDetails : LoaderCrawlPageDetail [ ]
57
+ type CrawlPageConfig = Omit < CrawlPageConfigOriginal , 'detailTargets ' > & {
58
+ detailTargets : LoaderCrawlPageDetail [ ]
59
59
}
60
60
61
61
interface CrawlDataConfigOriginal {
62
- crawlDetails : CrawlDataDetailConfig [ ]
62
+ detailTargets : CrawlDataDetailConfig [ ]
63
63
intervalTime : IntervalTime | undefined
64
64
}
65
65
66
- type CrawlDataConfig = Omit < CrawlDataConfigOriginal , 'crawlDetails ' > & {
67
- crawlDetails : LoaderCrawlDataDetail [ ]
66
+ type CrawlDataConfig = Omit < CrawlDataConfigOriginal , 'detailTargets ' > & {
67
+ detailTargets : LoaderCrawlDataDetail [ ]
68
68
}
69
69
70
70
interface CrawlFileConfigOriginal {
71
- crawlDetails : CrawlFileDetailConfig [ ]
71
+ detailTargets : CrawlFileDetailConfig [ ]
72
72
intervalTime : IntervalTime | undefined
73
73
onBeforeSaveFile :
74
74
| ( ( info : {
@@ -80,8 +80,8 @@ interface CrawlFileConfigOriginal {
80
80
| undefined
81
81
}
82
82
83
- type CrawlFileConfig = Omit < CrawlFileConfigOriginal , 'crawlDetails ' > & {
84
- crawlDetails : LoaderCrawlFileDetail [ ]
83
+ type CrawlFileConfig = Omit < CrawlFileConfigOriginal , 'detailTargets ' > & {
84
+ detailTargets : LoaderCrawlFileDetail [ ]
85
85
}
86
86
87
87
// API config
@@ -145,16 +145,16 @@ function parsePageCookies(
145
145
return cookiesArr
146
146
}
147
147
148
- function transformToCrawlDetails (
148
+ function transformToDetailTargets (
149
149
config : string | CrawlPageDetailConfig | ( string | CrawlPageDetailConfig ) [ ]
150
150
) : CrawlPageDetailConfig [ ]
151
- function transformToCrawlDetails (
151
+ function transformToDetailTargets (
152
152
config : string | CrawlDataDetailConfig | ( string | CrawlDataDetailConfig ) [ ]
153
153
) : CrawlDataDetailConfig [ ]
154
- function transformToCrawlDetails (
154
+ function transformToDetailTargets (
155
155
config : ( string | CrawlFileDetailConfig ) [ ]
156
156
) : CrawlFileDetailConfig [ ]
157
- function transformToCrawlDetails ( config : any ) {
157
+ function transformToDetailTargets ( config : any ) {
158
158
return isArray ( config )
159
159
? config . map ( ( item ) => ( isObject ( item ) ? item : { url : item } ) )
160
160
: [ isObject ( config ) ? config : { url : config } ]
@@ -171,8 +171,8 @@ function loaderCommonConfig(
171
171
| CrawlDataConfigOriginal
172
172
| CrawlFileConfigOriginal
173
173
) {
174
- // 1.crawlDetails
175
- crawlConfig . crawlDetails . forEach ( ( detail ) => {
174
+ // 1.detailTargets
175
+ crawlConfig . detailTargets . forEach ( ( detail ) => {
176
176
// detail > advanced > app
177
177
const { url, timeout, proxy, maxRetry, priority, headers } = detail
178
178
@@ -230,44 +230,41 @@ function loaderCommonConfig(
230
230
231
231
/* Create Config */
232
232
/*
233
- 每个创建配置函数的返回值都是类似于对应的进阶版(CrawlAdvancedConfig)配置
233
+ 每个创建配置函数的返回值都是类似于对应的进阶版(类似 CrawlAdvancedConfig)配置
234
234
不同点:
235
- - crawlDetails 里面存放的是详细版(CrawlDetailConfig)配置
235
+ - detailTargets 里面存放的是详细版(类似 CrawlDetailConfig)配置
236
236
- 不会保留与详细版配置相同的选项
237
237
238
- 生成 advancedConfig 对象可以对每个详细版配置进行装载, 如果传入进阶版(CrawlAdvancedConfig)配置会覆盖生成的
238
+ 生成 advancedConfig 对象可以对每个详细版配置进行装载, 如果传入进阶版(类似 CrawlAdvancedConfig)配置会覆盖生成的
239
239
*/
240
240
241
241
function createCrawlPageConfig (
242
242
xCrawlConfig : LoaderXCrawlConfig ,
243
243
originalConfig : UniteCrawlPageConfig
244
244
) : CrawlPageConfig {
245
245
const crawlPageConfig : CrawlPageConfigOriginal = {
246
- crawlDetails : [ ] ,
246
+ detailTargets : [ ] ,
247
247
intervalTime : undefined
248
248
}
249
249
250
- let advancedConfig : CrawlPageAdvancedConfig = {
251
- crawlPages : [ ]
252
- }
250
+ let advancedConfig : CrawlPageAdvancedConfig = { targets : [ ] }
253
251
254
- // 将每个 crawls 配置转成 detail 类型的配置
255
- if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'crawlPages' ) ) {
252
+ if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'targets' ) ) {
256
253
// CrawlPageAdvancedConfig 处理
257
- const { crawlPages } = originalConfig as CrawlPageAdvancedConfig
254
+ const { targets } = originalConfig as CrawlPageAdvancedConfig
258
255
advancedConfig = originalConfig as CrawlPageAdvancedConfig
259
256
260
- crawlPageConfig . crawlDetails . push ( ...transformToCrawlDetails ( crawlPages ) )
257
+ crawlPageConfig . detailTargets . push ( ...transformToDetailTargets ( targets ) )
261
258
} else {
262
259
// string | CrawlPageDetailConfig | (string | CrawlPageDetailConfig)[] 处理
263
- const detailes = transformToCrawlDetails (
260
+ const detaileTargets = transformToDetailTargets (
264
261
originalConfig as
265
262
| string
266
263
| CrawlPageDetailConfig
267
264
| ( string | CrawlPageDetailConfig ) [ ]
268
265
)
269
266
270
- crawlPageConfig . crawlDetails . push ( ...detailes )
267
+ crawlPageConfig . detailTargets . push ( ...detaileTargets )
271
268
}
272
269
273
270
// 装载公共配置
@@ -276,7 +273,7 @@ function createCrawlPageConfig(
276
273
// 装载单独配置
277
274
const haveAdvancedCookies = ! isUndefined ( advancedConfig . cookies )
278
275
const haveAdvancedViewport = ! isUndefined ( advancedConfig . viewport )
279
- crawlPageConfig . crawlDetails . forEach ( ( detail ) => {
276
+ crawlPageConfig . detailTargets . forEach ( ( detail ) => {
280
277
// detail > advanced > xCrawl
281
278
const { cookies, viewport } = detail
282
279
@@ -299,30 +296,28 @@ function createCrawlDataConfig(
299
296
originalConfig : UniteCrawlDataConfig
300
297
) : CrawlDataConfig {
301
298
const crawlDataConfig : CrawlDataConfigOriginal = {
302
- crawlDetails : [ ] ,
299
+ detailTargets : [ ] ,
303
300
intervalTime : undefined
304
301
}
305
302
306
- let advancedConfig : CrawlDataAdvancedConfig = {
307
- crawlDatas : [ ]
308
- }
303
+ let advancedConfig : CrawlDataAdvancedConfig = { targets : [ ] }
309
304
310
- if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'crawlDatas ' ) ) {
305
+ if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'targets ' ) ) {
311
306
// CrawlDataAdvancedConfig 处理
312
- const { crawlDatas } = originalConfig as CrawlDataAdvancedConfig
307
+ const { targets } = originalConfig as CrawlDataAdvancedConfig
313
308
advancedConfig = originalConfig as CrawlDataAdvancedConfig
314
309
315
- crawlDataConfig . crawlDetails . push ( ...transformToCrawlDetails ( crawlDatas ) )
310
+ crawlDataConfig . detailTargets . push ( ...transformToDetailTargets ( targets ) )
316
311
} else {
317
312
// string | CrawlDataDetailConfig | (string | CrawlDataDetailConfig)[] 处理
318
- const crawlDatas = transformToCrawlDetails (
313
+ const detaileTargets = transformToDetailTargets (
319
314
originalConfig as
320
315
| string
321
316
| CrawlDataDetailConfig
322
317
| ( string | CrawlDataDetailConfig ) [ ]
323
318
)
324
319
325
- crawlDataConfig . crawlDetails . push ( ...crawlDatas )
320
+ crawlDataConfig . detailTargets . push ( ...detaileTargets )
326
321
}
327
322
328
323
loaderCommonConfig ( xCrawlConfig , advancedConfig , crawlDataConfig )
@@ -335,36 +330,36 @@ function createCrawlFileConfig(
335
330
originalConfig : UniteCrawlFileConfig
336
331
) : CrawlFileConfig {
337
332
const crawlFileConfig : CrawlFileConfigOriginal = {
338
- crawlDetails : [ ] ,
333
+ detailTargets : [ ] ,
339
334
intervalTime : undefined ,
340
335
onBeforeSaveFile : undefined
341
336
}
342
337
343
- let advancedConfig : CrawlFileAdvancedConfig = { crawlFiles : [ ] }
338
+ let advancedConfig : CrawlFileAdvancedConfig = { targets : [ ] }
344
339
345
- if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'crawlFiles ' ) ) {
340
+ if ( isObject ( originalConfig ) && Object . hasOwn ( originalConfig , 'targets ' ) ) {
346
341
// CrawlFileAdvancedConfig 处理
347
- const { crawlFiles } = originalConfig as CrawlFileAdvancedConfig
342
+ const { targets } = originalConfig as CrawlFileAdvancedConfig
348
343
349
344
advancedConfig = originalConfig as CrawlFileAdvancedConfig
350
- crawlFileConfig . crawlDetails . push ( ...transformToCrawlDetails ( crawlFiles ) )
345
+ crawlFileConfig . detailTargets . push ( ...transformToDetailTargets ( targets ) )
351
346
} else {
352
347
// string | CrawlFileDetailConfig | (string | CrawlFileDetailConfig)[] 处理
353
- const crawlFiles = transformToCrawlDetails (
348
+ const detailTargets = transformToDetailTargets (
354
349
originalConfig as
355
350
| string
356
351
| CrawlFileDetailConfig
357
352
| ( string | CrawlFileDetailConfig ) [ ]
358
353
)
359
354
360
- crawlFileConfig . crawlDetails . push ( ...crawlFiles )
355
+ crawlFileConfig . detailTargets . push ( ...detailTargets )
361
356
}
362
357
363
358
loaderCommonConfig ( xCrawlConfig , advancedConfig , crawlFileConfig )
364
359
365
360
const haveAdvancedStoreDir = ! isUndefined ( advancedConfig ?. storeDir )
366
361
const haveAdvancedExtension = ! isUndefined ( advancedConfig ?. extension )
367
- crawlFileConfig . crawlDetails . forEach ( ( detail ) => {
362
+ crawlFileConfig . detailTargets . forEach ( ( detail ) => {
368
363
// 1.storeDir
369
364
if ( isUndefined ( detail . storeDir ) && haveAdvancedStoreDir ) {
370
365
detail . storeDir = advancedConfig ! . storeDir
@@ -437,17 +432,17 @@ export function createCrawlPage(xCrawlConfig: LoaderXCrawlConfig) {
437
432
}
438
433
439
434
// 创建新配置
440
- const { crawlDetails , intervalTime } = createCrawlPageConfig (
435
+ const { detailTargets , intervalTime } = createCrawlPageConfig (
441
436
xCrawlConfig ,
442
437
config
443
438
)
444
439
445
440
const controllerRes = await controller (
446
441
'page' ,
447
442
xCrawlConfig . mode ,
448
- crawlDetails ,
449
- intervalTime ,
443
+ detailTargets ,
450
444
cId ,
445
+ intervalTime ,
451
446
crawlPageSingle
452
447
)
453
448
@@ -491,8 +486,7 @@ export function createCrawlPage(xCrawlConfig: LoaderXCrawlConfig) {
491
486
errorPageContainer . delete ( cId )
492
487
493
488
const crawlRes =
494
- isArray ( config ) ||
495
- ( isObject ( config ) && Object . hasOwn ( config , 'crawlPages' ) )
489
+ isArray ( config ) || ( isObject ( config ) && Object . hasOwn ( config , 'targets' ) )
496
490
? crawlResArr
497
491
: crawlResArr [ 0 ]
498
492
@@ -588,17 +582,17 @@ export function createCrawlData(xCrawlConfig: LoaderXCrawlConfig) {
588
582
config : UniteCrawlDataConfig ,
589
583
callback ?: ( res : any ) => void
590
584
) : Promise < CrawlDataSingleRes < T > | CrawlDataSingleRes < T > [ ] > {
591
- const { crawlDetails , intervalTime } = createCrawlDataConfig (
585
+ const { detailTargets , intervalTime } = createCrawlDataConfig (
592
586
xCrawlConfig ,
593
587
config
594
588
)
595
589
596
590
const controllerRes = await controller (
597
591
'data' ,
598
592
xCrawlConfig . mode ,
599
- crawlDetails ,
600
- intervalTime ,
593
+ detailTargets ,
601
594
undefined ,
595
+ intervalTime ,
602
596
crawlRequestSingle
603
597
)
604
598
@@ -636,8 +630,7 @@ export function createCrawlData(xCrawlConfig: LoaderXCrawlConfig) {
636
630
} )
637
631
638
632
const crawlRes =
639
- isArray ( config ) ||
640
- ( isObject ( config ) && Object . hasOwn ( config , 'crawlDatas' ) )
633
+ isArray ( config ) || ( isObject ( config ) && Object . hasOwn ( config , 'targets' ) )
641
634
? crawlResArr
642
635
: crawlResArr [ 0 ]
643
636
@@ -671,15 +664,15 @@ export function createCrawlFile(xCrawlConfig: LoaderXCrawlConfig) {
671
664
config : UniteCrawlFileConfig ,
672
665
callback ?: ( res : any ) => void
673
666
) : Promise < CrawlFileSingleRes | CrawlFileSingleRes [ ] > {
674
- const { crawlDetails , intervalTime, onBeforeSaveFile } =
667
+ const { detailTargets , intervalTime, onBeforeSaveFile } =
675
668
createCrawlFileConfig ( xCrawlConfig , config )
676
669
677
670
const controllerRes = await controller (
678
671
'file' ,
679
672
xCrawlConfig . mode ,
680
- crawlDetails ,
681
- intervalTime ,
673
+ detailTargets ,
682
674
undefined ,
675
+ intervalTime ,
683
676
crawlRequestSingle
684
677
)
685
678
@@ -803,8 +796,7 @@ export function createCrawlFile(xCrawlConfig: LoaderXCrawlConfig) {
803
796
)
804
797
805
798
const crawlRes =
806
- isArray ( config ) ||
807
- ( isObject ( config ) && Object . hasOwn ( config , 'crawlFiles' ) )
799
+ isArray ( config ) || ( isObject ( config ) && Object . hasOwn ( config , 'targets' ) )
808
800
? crawlResArr
809
801
: crawlResArr [ 0 ]
810
802
0 commit comments