自动化脚本求大神指导方向 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
yulei199309
V2EX    程序员

自动化脚本求大神指导方向

  •  
  •   yulei199309 2017-07-07 08:44:36 +08:00 3597 次点击
    这是一个创建于 3047 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近突然对脚本语言感兴趣,想用 lua 写点自动检测服务器上线与否的脚本
    现在卡在想实现公司网站是否能正常访问的功能(服务器不在国内,最近时常不稳定)
    我本来想直接 request HTTP 页面,然后判定页面状态符是否 200 来确认。结果自己操作的时候突然发现公司的 portal 是 HTTPS 的,还用到了 SSO,不是域机器的话会跳转到登录页面,登录上去的话还有个 Symantec 的 token 输入界面,输入 token 应用中的 6 位码才能跳转到真正的 portal 页面。
    这样的话是不是实现起来难度太高了?我在脚本和 Web 这方面的知识几乎为零,只有以前玩 U3D 的时候写过一阵 js,这次也是摸石头过河想边玩编学 lua,有没有大神帮忙指个方向?
    18 条回复    2017-07-07 12:41:25 +08:00
    Betacoefficient
        1
    Betacoefficient  
       2017-07-07 08:51:42 +08:00
    当然是 py 语言啊
    likeshu
        2
    likeshu  
       2017-07-07 09:24:30 +08:00
    没有 web 知识,看楼主这需求要点时间,py 是比较快的。
    Chyroc
        3
    Chyroc  
       2017-07-07 09:25:37 +08:00
    python ansible
    yulei199309
        4
    yulei199309  
    OP
       2017-07-07 09:27:43 +08:00 via Android
    真的要用 py 吗?不想 lua 开荒开到一半转语言啊,如果用 Python 的话写起来很方便吗?
    402124773
        5
    402124773  
       2017-07-07 09:30:30 +08:00
    @yulei199309
    python 把,这个入门非常简单,实现你所描述的需求也非常合适。
    PythonAnswer
        6
    PythonAnswer  
       2017-07-07 09:38:02 +08:00
    应该大多数语言都可以做这些工作的, lua 没问题啊. 喜欢就上.
    PythoneerDev6
        7
    PythoneerDev6  
       2017-07-07 10:14:39 +08:00
    我也是建议 PY .
    maxxxxx
        8
    maxxxxx  
       2017-07-07 10:18:19 +08:00
    lua 还是适合当胶水吧。而且 lua 还得配环境,python 基本就不用了。
    yulei199309
        9
    yulei199309  
    OP
       2017-07-07 10:26:05 +08:00
    @maxxxxx 因为我花了整整一周才在 windows 上配好环境所以才不想换……
    如果大家都觉得 python 合适,那我就先用 python 试试,然后再想办法用 lua 实现一遍……
    因为毕竟学习 lua 才是我的目的,就当作曲线救国吧
    zcl0621
        10
    zcl0621  
       2017-07-07 10:26:05 +08:00
    用 python 啊 模拟登陆啥的 都支持
    struggle001
        11
    struggle001  
       2017-07-07 10:34:21 +08:00
    python 啊
    panzhc
        12
    panzhc  
       2017-07-07 11:04:35 +08:00
    判断返回状态码是 301 或者 302 ;或者专门开个健康检查的接口,免登录
    NaVient
        13
    NaVient  
       2017-07-07 11:29:26 +08:00
    @yulei199309 首先你花的时间都只是配环境???然而,py可以在五分钟内搭好环境.其次你的需求用Python做稍微谷歌一下边学边做,三天就能搞定.
    yulei199309
        14
    yulei199309  
    OP
       2017-07-07 11:50:20 +08:00 via Android
    @NaVient lua 要在 Windows 上用那些库太麻烦了,首先 lua 要自己编译,然后要装 mingw,装 luarocks,再装 luasocket 和 luasec 我一个纯新手完全 Google 出来的是花了不少时间。。
    我看到上面有人提到了模拟登录,我试试看这个方向
    jyf007
        15
    jyf007  
       2017-07-07 12:07:45 +08:00
    单纯用 bash 调 curl
    oott123
        16
    oott123  
       2017-07-07 12:36:41 +08:00
    楼主的问题不是换个语言能解决的。既然是为了学习 lua,就不要没事换 python 了。
    不过 lua 应该是有 windows 上的二进制分发的,包括 luarocks 啥的应该都有现成的才对……

    楼主这个问题,用 lua 解决没有任何问题,但确实麻烦了点。

    你看看公司的 portal 认证是不是 cookies 认证的,直接把 cookies 发过去能不能解决问题。如果能的话,还算好说。
    不能的话,你还要去研究 Symantec 的 token 算法,这就很复杂了。
    oott123
        17
    oott123  
       2017-07-07 12:39:49 +08:00
    环境的问题,官方文档其实都写的比较清楚了:
    可以用 Luadist: http://luadist.org/ 或者一堆其它的二进制分发 : http://lua-users.org/wiki/LuaBinaries

    估计楼主是要做和 c/c++ 集成的开发,那样的话才需要带源码,自己编译。然而,如果这样的话,lua 源码编译起来也比 python 的方便很多……
    okletswin
        18
    okletswin  
       2017-07-07 12:41:25 +08:00
    web 程序里定义资源,比如 /monitor,不走验证,直接返回,这才是正确的办法。curl 一下即可,接 zabbix 等都方便
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     856 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 22:13 PVG 06:13 LAX 14:13 JFK 17:13
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86