1
0
mirror of https://shylinux.com/x/icebergs synced 2025-04-28 02:02:02 +08:00

opt chrome

This commit is contained in:
bergyu 2021-07-22 20:36:03 +08:00
parent 1168b9edc2
commit 76fca9c644
4 changed files with 41 additions and 27 deletions

View File

@ -1,13 +1,13 @@
package crx
import (
"path"
ice "github.com/shylinux/icebergs"
"github.com/shylinux/icebergs/base/mdb"
"github.com/shylinux/icebergs/base/nfs"
"github.com/shylinux/icebergs/base/web"
kit "github.com/shylinux/toolkits"
"path"
)
const CACHE = "cache"
@ -16,30 +16,27 @@ func init() {
Index.Merge(&ice.Context{
Configs: map[string]*ice.Config{
CACHE: {Name: CACHE, Help: "爬虫缓存", Value: kit.Data(
kit.MDB_SHORT, kit.MDB_LINK, kit.MDB_FIELD, "time,step,size,total,action,text,name,type,link",
kit.MDB_PATH, "usr/spide",
kit.MDB_SHORT, kit.MDB_LINK, kit.MDB_FIELD, "time,hash,step,size,total,type,name,text,link",
kit.MDB_PATH, "usr/local/image",
)},
},
Commands: map[string]*ice.Command{
CACHE: {Name: "cache hash auto 添加 清理", Help: "爬虫缓存", Action: map[string]*ice.Action{
CACHE: {Name: "cache hash auto create prunes", Help: "爬虫缓存", Action: map[string]*ice.Action{
mdb.CREATE: {Name: "create", Help: "添加", Hand: func(m *ice.Message, arg ...string) {
m.Option("_process", "_progress")
if m.Cmdy(mdb.SELECT, m.Prefix(CACHE), "", mdb.HASH, kit.MDB_LINK, m.Option(kit.MDB_LINK)); len(m.Appendv(kit.MDB_TOTAL)) > 0 {
if m.Cmdy(mdb.SELECT, m.Prefix(CACHE), "", mdb.HASH, m.OptionSimple(kit.MDB_LINK)); len(m.Appendv(kit.MDB_TOTAL)) > 0 {
return // 已经下载
}
h := m.Cmd(mdb.INSERT, m.Prefix(CACHE), "", mdb.HASH,
kit.MDB_LINK, m.Option(kit.MDB_LINK),
kit.MDB_TYPE, m.Option(kit.MDB_TYPE),
kit.MDB_NAME, m.Option(kit.MDB_NAME),
kit.MDB_TEXT, m.Option(kit.MDB_TEXT),
)
m.Option("progress", m.Prefix(CACHE), "", m.Option(kit.MDB_LINK))
m.Option(kit.Keycb(web.DOWNLOAD), m.Prefix(CACHE), "", kit.Keys(kit.MDB_HASH, h))
h := m.Cmdx(mdb.INSERT, m.Prefix(CACHE), "", mdb.HASH, m.OptionSimple("type,name,text,link"))
value := kit.GetMeta(m.Confm(CACHE, kit.Keys(kit.MDB_HASH, h)))
m.Option(kit.Keycb(web.DOWNLOAD), func(size, total int) {
value[kit.MDB_TOTAL], value[kit.MDB_SIZE], value[kit.SSH_STEP] = total, size, kit.Format(size*100/total)
})
msg := m.Cmd("web.spide", web.SPIDE_DEV, web.SPIDE_CACHE, web.SPIDE_GET, m.Option(kit.MDB_LINK))
p := path.Join(m.Conf(m.Prefix(CACHE), kit.META_PATH), m.Option(kit.MDB_NAME))
p := path.Join(m.Conf(CACHE, kit.META_PATH), m.Option(kit.MDB_NAME))
m.Cmdy(nfs.LINK, p, msg.Append(kit.MDB_FILE))
m.Toast("下载成功")
}},
mdb.REMOVE: {Name: "remove", Help: "删除", Hand: func(m *ice.Message, arg ...string) {
m.Cmdy(mdb.DELETE, m.Prefix(CACHE), "", mdb.HASH, kit.MDB_HASH, m.Option(kit.MDB_HASH))
@ -48,8 +45,9 @@ func init() {
m.Cmdy(mdb.PRUNES, m.Prefix(CACHE), "", mdb.HASH, kit.SSH_STEP, "100")
}},
}, Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
m.Option(mdb.FIELDS, m.Conf(m.Prefix(CACHE), kit.META_FIELD))
m.Cmdy(mdb.SELECT, m.Prefix(CACHE), "", mdb.HASH)
m.Fields(len(arg) == 0, m.Conf(CACHE, kit.META_FIELD))
m.Cmdy(mdb.SELECT, m.Prefix(CACHE), "", mdb.HASH, kit.MDB_HASH, arg)
m.PushAction(mdb.REMOVE)
}},
},
})

View File

@ -11,12 +11,16 @@ chapter "应用"
field "同步流" web.code.chrome.sync
field "收藏夹" web.code.chrome.favor
field "蜘蛛侠" web.code.chrome.spide
field "缓存池" web.code.chrome.cache
field "浏览器" web.space
field "相册簿" web.wiki.feel
section "命令行"
refer `
终端 terminal://
博客 https://www.cnblogs.com/lymvv/p/8431238.html
`
section "weixin"
refer `
weixin://dl/moments
`

View File

@ -18,6 +18,15 @@ func init() {
"/page": {Name: "/page", Help: "网页", Action: map[string]*ice.Action{
ctx.COMMAND: {Name: "command", Help: "命令", Hand: func(m *ice.Message, arg ...string) {
if arg[0] == "get" {
switch m.Option("hostname") {
case "music.163.com":
m.Option("top", "200")
m.Result("web.code.chrome.spide", "", m.Option("tid"))
return
case "localhost", "fib.woa.com":
return
}
return
m.Option("top", "200")
m.Echo("cli.runtime")
return

View File

@ -11,11 +11,6 @@ const SPIDE = "spide"
func init() {
Index.Merge(&ice.Context{
Configs: map[string]*ice.Config{
SPIDE: {Name: SPIDE, Help: "网页爬虫", Value: kit.Data(
kit.MDB_SHORT, kit.MDB_LINK, kit.MDB_PATH, "usr/spide",
)},
},
Commands: map[string]*ice.Command{
SPIDE: {Name: "spide wid tid cmd auto", Help: "网页爬虫", Action: map[string]*ice.Action{
web.DOWNLOAD: {Name: "download", Help: "下载", Hand: func(m *ice.Message, arg ...string) {
@ -29,10 +24,18 @@ func init() {
m.Push(kit.MDB_TIME, value[kit.MDB_TIME])
m.Push(kit.MDB_TYPE, value[kit.MDB_TYPE])
m.Push(kit.MDB_NAME, value[kit.MDB_NAME])
m.PushButton(web.DOWNLOAD)
m.PushRender(kit.MDB_TEXT, value[kit.MDB_TYPE], value[kit.MDB_LINK])
switch m.PushButton(web.DOWNLOAD); value[kit.MDB_TYPE] {
case "img":
m.PushImages(kit.MDB_TEXT, value[kit.MDB_LINK])
case "video":
m.PushVideos(kit.MDB_TEXT, value[kit.MDB_LINK])
default:
m.Push(kit.MDB_TEXT, "")
}
m.Push(kit.MDB_LINK, value[kit.MDB_LINK])
})
m.StatusTimeCount()
break
}
fallthrough