From 679c6fa0d499d29a7c1f6bd3963b701a0940d8d4 Mon Sep 17 00:00:00 2001 From: zu1k Date: Sun, 6 Sep 2020 09:17:50 +0800 Subject: [PATCH] fetch proxies from db every task & bump version --- api/router.go | 2 +- internal/app/task.go | 1 + internal/database/proxy.go | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/api/router.go b/api/router.go index 8fbad28..655637e 100644 --- a/api/router.go +++ b/api/router.go @@ -14,7 +14,7 @@ import ( "github.com/zu1k/proxypool/pkg/provider" ) -const version = "v0.3.6" +const version = "v0.3.7" var router *gin.Engine diff --git a/internal/app/task.go b/internal/app/task.go index dbdc9de..368c5b0 100644 --- a/internal/app/task.go +++ b/internal/app/task.go @@ -21,6 +21,7 @@ func CrawlGo() { go g.Get2Chan(pc, wg) } proxies := cache.GetProxies("allproxies") + proxies = append(proxies, database.GetAllProxies()...) go func() { wg.Wait() close(pc) diff --git a/internal/database/proxy.go b/internal/database/proxy.go index 3de5f04..63a9357 100644 --- a/internal/database/proxy.go +++ b/internal/database/proxy.go @@ -1,6 +1,7 @@ package database import ( + "github.com/zu1k/proxypool/pkg/getter" "github.com/zu1k/proxypool/pkg/proxy" "gorm.io/gorm" ) @@ -48,3 +49,20 @@ func SaveProxyList(pl proxy.ProxyList) { DB.Create(&proxies) } } + +func GetAllProxies() (proxies proxy.ProxyList) { + proxies = make(proxy.ProxyList, 0) + if DB == nil { + return + } + + proxiesDB := make([]Proxy, 0) + DB.Select("link").Find(&proxiesDB) + + for _, proxyDB := range proxiesDB { + if proxiesDB != nil { + proxies = append(proxies, getter.String2Proxy(proxyDB.Link)) + } + } + return +}