subney 发表于 2023-12-8 21:17

模仿青龙面板的任务执行器

租的服务器, 到期了, 但是薅羊毛的脚本不能停啊, 虽然一年下来, 收益不过百来块, 就是图一乐.
本来想着将青龙面板装到本地, 但是觉得不太安全, 于是自己捏了一个毛坯房.

其实还有更简单的方法, 就是使用windows的定时任务, 但是不太灵活.
比如设置每天定时执行, 错过时间了怎么办?
另外, 我尝试过, 并没有运行脚本.

我的程序很简单, 主要部分, 就是添加任务, 设置cron格式的执行时间, 然后主程序不断循环, 检查是否有任务需要执行.
次要部分就是界面了, 老规矩, fastapi+vue, 界面写起来容易, 前后端拼起来就难了, 主要还是水平太菜, python和html都不太会.
前前后后花了一个月时间吧, 总算是能自动跑脚本了, 然后, 我发现, 为了这点苍蝇肉, 花了那么多功夫, 真是蠢到家了:rggrg

成品地址: https://wwoc.lanzouq.com/iDgW31h7l4gh
需要安装python3.11, 以及其他依赖.

重要说明: 添加任务时的cron格式: 分 时 天 周 月 (貌似, 我也忘了, copy别人的代码, 自己只用到前面两个时间, 具体可以在cron.py看)
程序有很多bug, 捉了一礼拜, 弃疗了...

附上如何跑脚本的脚本
import os
from subprocess import Popen, PIPE
from pathlib import Path

WorkDir = Path(__file__).parent
os.chdir(WorkDir)# 设置工作目录为脚本所在目录, 防止脚本内部引用时找不到模块

dir = os.curdir# 脚本所在目录

scripts = [
    "jd_bean_change_pro.js",
    "jd_beanSign.js",
    "jd_bean_home.js",
    "jd_cxjhelp_draw.js",
    "jd_dwapp.js",
    "jd_fruit_task.js",
    "jd_kd.js",
    "jd_krsign.js",
    "jd_plantBean.js",
    "jd_price.js",
    "jd_qdtx.js",
    "jd_sign_graphics.js",
    "jd_speed_sign_new.js",
    "jd_tj_sign.js",
    "jd_ttlhb.js",
    "jd_unsubscribe.js",
]


def sprint(msg: str):
    print(f"\033[1;34;40m{msg}\033[0m")


print(f"Start executing jobs, total [{len(scripts)}]")
for i, script in enumerate(scripts):
    msg = f"start to executing job[{i}]:{script}"
    sprint(msg)
    full_path = os.path.join(dir, script)
    process = Popen(["node", full_path], stdout=PIPE, stderr=PIPE,encoding='utf8')
    stdout, stderr = process.communicate()
    res = stdout.decode("utf-8")
    err = stderr.decode("utf-8")
    print(res)
    print(err)
    msg = f"Complete job[{i}]:{script}"
    sprint(msg)
    if "cookie已失效" in res:
      print("JD Cookie 已经过期!")
      break

ayang0513 发表于 2024-10-14 14:24

其实有时候,不管羊毛大不大,制作学习的过程也很重要,这次的制作,以后也一定会有更多的想法和启发,感谢分享

subney 发表于 2023-12-8 21:18

源码地址 https://github.com/StBinge/watchdog.git

moruye 发表于 2023-12-8 21:28

lizf2019 发表于 2023-12-8 21:58

薅羊毛脚本是那种游戏挂机吗 求教{:301_974:}

wushaolaiye 发表于 2023-12-8 22:14

感谢分享,薅羊毛的方法有了,得找一下羊在哪里

whabm 发表于 2023-12-8 22:24

感谢分享{:1_893:}

青春莫相随 发表于 2023-12-8 22:26

感谢分享,{:1_893:}

xzv587 发表于 2023-12-8 22:40

能薅羊毛吗

xiaoyaowolf 发表于 2023-12-8 23:04

薅羊毛可以吗,可以薅羊毛吗

34000920 发表于 2023-12-9 00:09


感谢分享,
页: [1] 2 3 4
查看完整版本: 模仿青龙面板的任务执行器