123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- package main
- import (
- _ "filter"
- "front"
- "luacheck"
- "quesManager"
- "spider"
- "task"
- "timetask"
- "vps"
- //. "luaweb/task"
- "luaerrdata"
- "net/http"
- qu "qfw/util"
- "qfw/util/redis"
- "taskManager"
- u "util"
- codegrpc "analysiscode/client"
- util "spiderutil"
- "time"
- "github.com/go-xweb/httpsession"
- "github.com/go-xweb/xweb"
- "github.com/yuin/gopher-lua"
- )
- func init() {
- //qu.ReadConfig("config.json", &tomail.Mail)
- front.SessMap = make(map[string]*httpsession.Session)
- qu.ReadConfig(&util.Config)
- qu.ReadConfig("autoimport.json", &front.AutoTpl)
- qu.ReadConfig("transfercode.json", &front.Transfercode)
- u.InitRandomCode()
- //vps
- qu.ReadConfig("vpsconfig.json", &vps.VpsConfig)
- //redis
- redis.InitRedis(util.Config.Redisservers)
- //验证码识别client
- codegrpc.InitCodeGrpcClient()
- //go执行js服务
- //gojs.InitGoRunJsClient()
- //mail
- smtp := util.Config.Smtp
- front.Mails = util.New(smtp["addr"], qu.IntAll(smtp["port"]), smtp["user"], smtp["pwd"])
- lua.Disablelib(util.Config.Luadisablelib)
- //初始化mgo
- u.InitMgo()
- //初始化区域信息
- u.InitAreaCity()
- //xweb框架配置
- xweb.Config.RecoverPanic = true
- xweb.Config.Profiler = true
- xweb.RootApp().AppConfig.TemplateDir = "web/templates"
- xweb.RootApp().AppConfig.StaticDir = "web/staticres"
- xweb.RootApp().AppConfig.StaticFileVersion = false
- xweb.RootApp().AppConfig.CheckXsrf = false
- xweb.RootApp().AppConfig.ReloadTemplates = true
- xweb.RootApp().AppConfig.EnableHttpCache = false
- xweb.RootApp().AppConfig.Mode = xweb.Product
- xweb.RootApp().AppConfig.CacheTemplates = false
- xweb.AddAction(&front.Front{})
- xweb.AddAction(&front.Site{})
- xweb.AddAction(&vps.Vps{})
- xweb.AddAction(&taskManager.TaskM{})
- xweb.AddAction(&task.Task{})
- xweb.AddAction(&quesManager.QuesM{})
- xweb.AddAction(&luaerrdata.ErrorData{})
- xweb.AddAction(&luaerrdata.ErrorLua{})
- xweb.AddAction(&front.LuaMove{})
- xweb.RootApp().AppConfig.SessionTimeout = 1 * time.Hour
- xweb.RootApp().Logger.SetOutputLevel(4)
- xweb.AddTmplVar("add", func(a, b int) int { return a + b })
- spider.InitMsgClient(
- qu.ObjToString(util.Config.Msgservers["comm"]["addr"]),
- qu.ObjToString(util.Config.Msgservers["bid"]["addr"]),
- qu.ObjToString(util.Config.Msgservers["test"]["addr"]),
- qu.ObjToString(util.Config.Msgservers["comm"]["name"]),
- qu.ObjToString(util.Config.Msgservers["bid"]["name"]),
- qu.ObjToString(util.Config.Msgservers["test"]["name"]),
- )
- spider.InitMsgClientFile(util.Config.MsgserveraddrFile, util.Config.Msgname+"_file")
- spider.InitChromeMsgClient(util.Config.MsgserveraddrChromedp, util.Config.MsgserveraddrChromedpTest, util.Config.Msgname+"_chromedp", util.Config.Msgname+"_chromedptest")
- //初始化网络存储服务
- //util.InitWeedcl()
- util.OssInit(
- qu.ObjToString(util.Config.OssInfo["ossEndpoint"]),
- qu.ObjToString(util.Config.OssInfo["ossAccessKeyId"]),
- qu.ObjToString(util.Config.OssInfo["ossAccessKeySecret"]),
- qu.ObjToString(util.Config.OssInfo["ossBucketName"]),
- )
- //udp
- //udp.InitUdp()//异常数据重采,暂取消该功能
- }
- func main() {
- //定时任务
- go timetask.TimeTask()
- //爬虫质检
- go luacheck.LuaCheckStart()
- //万能爬虫校验
- //go commutil.CommCodeCheck()
- //提供接口,接收其他数据
- http.HandleFunc("/spider/infos", func(w http.ResponseWriter, req *http.Request) {
- data := req.FormValue("data")
- types := req.FormValue("type")
- if types == "info" {
- front.SpiderInfo(data)
- }
- if types == "mtask" {
- front.SpiderModifyTask(data)
- }
- //if types == "code" { //节点转移(由于6011端口总挂,调整为定时任务)
- // front.SpiderMoveEvent(data)
- //}
- })
- go http.ListenAndServe(":6011", nil)
- xweb.Run(":" + util.Config.Webport)
- }
|