@@ -7,25 +7,21 @@ import (
7
7
type Spider struct {
8
8
any `collection:"spiders"`
9
9
BaseModel [Spider ] `bson:",inline"`
10
- Name string `json:"name" bson:"name"` // spider name
11
- ColId primitive.ObjectID `json:"col_id" bson:"col_id"` // data collection id (deprecated) # TODO: remove this field in the future
12
- ColName string `json:"col_name,omitempty" bson:"col_name"` // data collection name
13
- DbName string `json:"db_name,omitempty" bson:"db_name"` // database name
14
- DataSourceId primitive.ObjectID `json:"data_source_id" bson:"data_source_id"` // data source id
15
- DataSource * Database `json:"data_source,omitempty" bson:"-"` // data source
16
- Description string `json:"description" bson:"description"` // description
17
- ProjectId primitive.ObjectID `json:"project_id" bson:"project_id"` // Project.Id
18
- Mode string `json:"mode" bson:"mode"` // default Task.Mode
19
- NodeIds []primitive.ObjectID `json:"node_ids" bson:"node_ids"` // default Task.NodeIds
20
- GitId primitive.ObjectID `json:"git_id" bson:"git_id"` // related Git.Id
21
- GitRootPath string `json:"git_root_path" bson:"git_root_path"`
22
- Git * Git `json:"git,omitempty" bson:"-"`
23
- Template string `json:"template,omitempty" bson:"template,omitempty"` // spider template
24
- TemplateParams * struct {
25
- SpiderName string `json:"spider_name,omitempty" bson:"spider_name,omitempty"`
26
- StartUrls string `json:"start_urls,omitempty" bson:"start_urls,omitempty"`
27
- Domains string `json:"domains,omitempty" bson:"domains,omitempty"`
28
- } `json:"template_params,omitempty" bson:"template_params,omitempty"`
10
+ Name string `json:"name" bson:"name"` // spider name
11
+ ColId primitive.ObjectID `json:"col_id" bson:"col_id"` // data collection id (deprecated) # TODO: remove this field in the future
12
+ ColName string `json:"col_name,omitempty" bson:"col_name"` // data collection name
13
+ DbName string `json:"db_name,omitempty" bson:"db_name"` // database name
14
+ DataSourceId primitive.ObjectID `json:"data_source_id" bson:"data_source_id"` // data source id
15
+ DataSource * Database `json:"data_source,omitempty" bson:"-"` // data source
16
+ Description string `json:"description" bson:"description"` // description
17
+ ProjectId primitive.ObjectID `json:"project_id" bson:"project_id"` // Project.Id
18
+ Mode string `json:"mode" bson:"mode"` // default Task.Mode
19
+ NodeIds []primitive.ObjectID `json:"node_ids" bson:"node_ids"` // default Task.NodeIds
20
+ GitId primitive.ObjectID `json:"git_id" bson:"git_id"` // related Git.Id
21
+ GitRootPath string `json:"git_root_path" bson:"git_root_path"`
22
+ Git * Git `json:"git,omitempty" bson:"-"`
23
+ Template string `json:"template,omitempty" bson:"template,omitempty"` // spider template
24
+ TemplateParams * SpiderTemplateParams `json:"template_params,omitempty" bson:"template_params,omitempty"`
29
25
30
26
// stats
31
27
Stat * SpiderStat `json:"stat,omitempty" bson:"-"`
@@ -36,3 +32,10 @@ type Spider struct {
36
32
Priority int `json:"priority" bson:"priority"`
37
33
AutoInstall bool `json:"auto_install" bson:"auto_install"`
38
34
}
35
+
36
+ type SpiderTemplateParams struct {
37
+ ProjectName string `json:"project_name,omitempty" bson:"project_name,omitempty"`
38
+ SpiderName string `json:"spider_name,omitempty" bson:"spider_name,omitempty"`
39
+ StartUrls string `json:"start_urls,omitempty" bson:"start_urls,omitempty"`
40
+ AllowedDomains string `json:"allowed_domains,omitempty" bson:"allowed_domains,omitempty"`
41
+ }
0 commit comments