123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- package timetask
- import (
- "log"
- qu "app.yhyue.com/moapp/jybase/common"
- "github.com/robfig/cron"
- "KeyWebsiteMonitor/spider/browser"
- "KeyWebsiteMonitor/spider/config"
- "KeyWebsiteMonitor/spider/db"
- )
- var LuaconfigMap map[string]interface{}
- func Init() map[string]interface{} {
- m := map[string]interface{}{}
- log.Println("加载luaconfig")
- sess := db.Mgo.GetMgoConn()
- defer db.Mgo.DestoryMongoConn(sess)
- it := sess.DB("editor").C("luaconfig").Find(nil).Sort("_id").Select(map[string]interface{}{
- "spidercode": 1,
- "spidercompete": 1,
- "infoformat": 1,
- "param_common": 1,
- }).Iter()
- total := 0
- for tmp := make(map[string]interface{}); it.Next(&tmp); total++ {
- if total%5000 == 0 {
- log.Println("cur index ", total)
- }
- spidercode := qu.ObjToString(tmp["spidercode"])
- infoformat := tmp["infoformat"]
- spidercompete := tmp["spidercompete"]
- param_common, _ := tmp["param_common"].([]interface{})
- t := param_common[7]
- m[spidercode] = map[string]interface{}{
- "T": t,
- "infoformat": infoformat,
- "spidercompete": spidercompete,
- }
- tmp = make(map[string]interface{})
- }
- log.Println("加载luaconfig结束")
- return m
- }
- func Run() {
- browser.DoTask()
- return
- log.Println(config.Sysconfig.CronTime)
- c := cron.New()
- defer c.Stop()
- //*/1 * * * * *
- //51 10 * * * *
- //"30 4 11 * * *"
- c.AddFunc(config.Sysconfig.CronTime, browser.DoTask)
- // 启动cron调度器
- c.Start()
- // 为了防止程序退出,这里使用一个阻塞的select语句
- }
- // //老
- // func Run2() {
- // log.Println(config.Sysconfig.CronTime)
- // c := cron.New()
- // defer c.Stop()
- // //*/1 * * * * *
- // //51 10 * * * *
- // //"30 4 11 * * *"
- // c.AddFunc(config.Sysconfig.CronTime, do)
- // // 启动cron调度器
- // c.Start()
- // // 为了防止程序退出,这里使用一个阻塞的select语句
- // select {}
- // }
- // func do() {
- // log.Println("start")
- // bs, err := os.ReadFile(*luaFile)
- // if err != nil {
- // log.Fatal(err)
- // }
- // script := string(bs)
- // var vm *VM
- // if sp_config.Sysconfig.RunModel == "local" {
- // vm = NewLocalVM(sp_config.Sysconfig.HeadLess, sp_config.Sysconfig.ShowImage, sp_config.Sysconfig.ProxyAddr, sp_config.Sysconfig.DownloadPath, storage, *mdb)
- // } else {
- // // vm = NewRemoteVM(config.WebsocketURL, storage, *mdb)
- // vm = NewRemoteVM(*chromeweb, storage, *mdb)
- // }
- // if err := vm.RunScript(script); err != nil {
- // log.Println("vm runscript", err.Error())
- // }
- // //最后执行
- // if sp_config.Sl != nil {
- // log.Println("sl close")
- // sp_config.Sl.Close()
- // }
- // log.Println("end")
- // }
|