123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- /**
- *读取基本配置到内存
- **/
- package spiderutil
- import (
- "time"
- )
- //系统配置
- type config struct {
- Webport string `json:"webport"`
- Mongodb_spider string `json:"mongodb_spider"`
- Spider_dbsize int `json:"spider_dbsize"`
- Mongodb_editor string `json:"mongodb_editor"`
- Editor_dbsize int `json:"editor_dbsize"`
- Mongodb_dbsize int `json:"mongodb_dbsize"`
- Msgname string `json:"msgname"`
- Msgserveraddr string `json:"msgserveraddr"`
- MsgserveraddrFile string `json:"msgserveraddrfile"`
- MsgserveraddrChromedp string `json:"msgserveraddrchromedp"`
- MsgserveraddrChromedpTest string `json:"msgserveraddrchromedptest"`
- Editoraddr string `json:"editoraddr"`
- Tesseractadd string `json:"tesseractadd"`
- BidEditor dbInfo `json:"bideditor"`
- Bidding dbInfo `json:"bidding"`
- Testdir string `json:"testdir"`
- Uploadevent int `json:"uploadevent"`
- Redistype string `json:"redistype"`
- Redisservers string `json:"redisservers"`
- BloomRedisservers string `json:"bloomredisservers"`
- Redishosts []string `json:"redishosts"`
- FileServer string `json:"fileServer"`
- Luadisablelib map[string]map[string]bool `json:"luadisablelib"`
- Working int `json:"working"` //0高效模式,1节能模式
- Chansize int `json:"chansize"`
- DetailChansize int `json:"detailchansize"` //下载三级页的线程数
- LogLevel int `json:"logLevel"` //日志基本1debug 2info 3warn
- DayNum int `json:"daynum"`
- Modal int `json:"Modal"` //1列表页三级页分开采集,0原始采完列表采三级页(7000,7700)
- PageTurnInfo pageTurnInfo `json:"pageturninfo"` //翻页相关配置
- IsHistoryEvent bool `json:"ishistoryevent"` //只有7000为true
- SiteType map[string][]string `json:"sitetype"` //网站类型
- SiteType2 map[string][]string `json:"sitetype2"` //网站类型
- PlatType map[string]bool `json:"plattype"` //平台类型
- SiteColl string `json:"sitecoll"` //网站表名
- ThreadBaseNum int `json:"threadbasenum"` //开启线程的数据基数
- ThreadUpperLimit int `json:"threadupperlimit"` //总线程上限
- RedisClusterAddrs []string `json:"redisclusteraddrs"` //redis集群地址
- ProxyAddr string `json:"proxyaddr"` //代理地址
- ProxyAuthor string `json:"proxyauthor"` //代理作者
- RenderAddr string `json:"renderaddr"` //页面渲染服务地址
- //补漏
- Checkmaxpage map[string]int `json:"checkmaxpage"`
- CheckHourTime int `json:"checkhourtime"`
- HasDownload int `json:"pagedownload"`
- //编辑器
- Dbaddr string `json:"dbaddr"`
- Dbname string `json:"dbname"`
- Dbname2 string `json:"dbname2"`
- Msgservers map[string]map[string]interface{} `json:"msgservers"`
- Uploadevents map[string]interface{} `json:"uploadevents"`
- Model map[string]map[string]interface{} `json:"model"`
- Smtp map[string]string `json:"smtp"`
- JsVmUrl string `json:jsvmurl`
- IsDelay bool `json:isdelay` //是否开启延迟策略
- //数据重采
- Mongodb_bidding string `json:"mongodb_bidding"`
- TmpDbAddr string `json:"tmpmgoaddr"`
- TmpCollName string `json:"tmpmgocoll"`
- TmpDbName string `json:"tmpmgodb"`
- UdpAddr string `json:"udpaddr"`
- UdpPort int `json:"udport"`
- LocalUdpPort string `json:"localudport"`
- TmpDbSize int `json:"tmpmgosize"`
- SpiderChan int `json:"spiderchan"`
- Flows []flow `json:"flows"`
- //爬虫迁移
- Cron string `json:"cron"`
- DownloadNum int `json:"downloadnum"`
- Email map[string]interface{} `json:"mail"`
- //关键词过滤
- Word map[string]string `json:"word"`
- //oss
- OssInfo map[string]interface{} `json:"oss"`
- //招标库账号密码
- UserName string `json:"username"`
- PassWord string `json:"password"`
- //邮件
- JkMail map[string]string `json:"jkmail"`
- //es
- Es map[string]interface{} `json:"es"`
- //获取验证码相关
- ServerAddress string `json:"serveraddress"`
- ServerPort string `json:"serverport"`
- ServerCodeAddress string `json:"servercodeaddress"`
- ServerCodefreeAddressOcr string `json:"servercodefreeaddressocr"`
- ServerCodefreeAddressArithmetic string `json:"servercodefreeaddressarithmetic"`
- TimeOut time.Duration `json:"timeout"`
- //js相关
- JsServerAddress string `json:"jsserveraddress"`
- //模拟登陆
- LoginServerAddress string `json:"loginserveraddress"`
- //系统库
- SystemDB dbInfo `json:"systemdb"`
- //基本数据库
- DataDB dbInfo `json:"datadb"`
- //spider数据库
- LuaSpiderDB dbInfo `json:"luaspiderdb"`
- //nats
- SpiderNats Nats `json:"nats"`
- }
- type Nats struct {
- NatsUrl string `json:"natsurl"`
- Subscribe string `json:"subscribe"`
- }
- type flow struct {
- Memo string `json:"memo"`
- Addr string `json:"addr"`
- Port int `json:"port"`
- Stype string `json:"stype"`
- }
- type dbInfo struct {
- Addr string `json:"addr"`
- Db string `json:"db"`
- Coll string `json:"coll"`
- Size int `json:"size"`
- Username string `json:"username"`
- Password string `json:"password"`
- }
- type pageTurnInfo struct {
- RepeatPageTimesLimit int `json:"repeatpagetimeslimit"` //无限翻页连续判重页数上限
- TurnPageMaxLimit int `json:"turnpagemaxlimit"` //连续翻页上限
- NextPageMaxLimit int `json:"nextpagemaxlimit"` //翻页到上限后继续翻页数上限
- ListParallelTaskLimit int `json:"listparalleltasklimit"` //列表页爬虫并行任务数量上限
- ListThreadsNum int `json:"listthreadsnum"` //列表页并发数量
- }
- var Config config
|