V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
blueboyggh
V2EX  ›  问与答

想编写一个实现以下功能的软件,需要学习那些知识?

  •  1
     
  •   blueboyggh · 2015-10-28 13:18:38 +08:00 · 4753 次点击
    这是一个创建于 3074 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是这样,我们公司办公有一个工单系统,用浏览器登录浏览操作的,我们用来处理工单,公司对于我们受理工单的时长有考核,要求全天候保证 30 分钟内将工单受理,这里的受理是指点击工单页面的受理按钮就可以。但是谁都没办法 24 小时盯着工单啊,而且这东西也只有单人负责,没有轮流值班一说,所以我就想是不是可以编写一个软件来实现自动受理工单的功能。

    这个软件只需要可以获取工单列表,然后对于未受理的工单进行受理就可以,每十五分钟左右自动来一次就行。

    我现在想知道我自己编这个软件需要什么知识,我个人会一点儿点儿的 C ,一点儿点儿的 JAVA ,一点儿点儿的 Android 开发,需要其他的话我再去学,我觉得有需求的去学习应该会更有动力一点儿。

    谢谢各位的解答!
    31 条回复    2015-10-28 22:11:40 +08:00
    s2555
        1
    s2555  
       2015-10-28 13:27:13 +08:00
    我之前有过类似的需求,用 C#简单写了个桌面软件处理
    c24c4fe8
        2
    c24c4fe8  
       2015-10-28 13:28:30 +08:00
    后台需要弄个工单流 建议你用找找 java 实现的工单流自己改造下
    blueboyggh
        3
    blueboyggh  
    OP
       2015-10-28 13:32:46 +08:00
    @s2555 有人说用 java ,有人说用 js 写插件,有人说用 python ,实在是感觉不知道从哪儿开始啊
    blueboyggh
        4
    blueboyggh  
    OP
       2015-10-28 13:33:03 +08:00
    @c24c4fe8 小白表示您说的中文我看不懂....
    cxe2v
        5
    cxe2v  
       2015-10-28 13:35:27 +08:00
    用 JS 写个脚本放在本地自动运行查询工单和受理工单按钮的功能
    blueboyggh
        6
    blueboyggh  
    OP
       2015-10-28 13:37:31 +08:00
    @cxe2v 看来还是推荐 JS 的多,我想问问用 JS 写脚本的话,区分浏览器吗?我们这个系统貌似只能在 IE 上运行,而且对 ie6 的兼容性最好, ie8 以上都要开兼容模式
    c24c4fe8
        7
    c24c4fe8  
       2015-10-28 13:42:35 +08:00
    不好意思 打错字了

    后台弄个工单流系统 建议你找找 java 实现的工单流框架 然后自己改造下,前台的话 随便你用什么实现都行。
    qinxi
        8
    qinxi  
       2015-10-28 13:46:12 +08:00
    按键精灵 无脑录制
    c24c4fe8
        9
    c24c4fe8  
       2015-10-28 13:47:41 +08:00
    没仔细看你的说明 你这个就是模拟点击个按钮, 你用 fiddler 抓下点击受理按钮发送的 url 和相关的参数, 然后 js 或 python 模拟调用这个 url 和相关的参数就行了
    c24c4fe8
        10
    c24c4fe8  
       2015-10-28 13:48:34 +08:00
    qinxi 说的按键精灵最方便
    blueboyggh
        11
    blueboyggh  
    OP
       2015-10-28 13:54:19 +08:00
    @c24c4fe8 问题是,受理按钮是在工单里的,打开工单才能显示,在工单列表只显示是否已受理,不显示受理按钮,如果是按键精灵,就需要每个工单都打开一遍吧?这样会不会太麻烦了
    blueboyggh
        12
    blueboyggh  
    OP
       2015-10-28 13:55:29 +08:00
    @qinxi 按键精灵的话需要每个工单都打开一遍,而且随着工单的增多,最后一张工单的位置也不一样,这样无脑应该是无法实现的吧
    c24c4fe8
        13
    c24c4fe8  
       2015-10-28 14:06:44 +08:00
    你是要对未受理的工单点开,然后填上信息,然后再点击提交,然后这个过程要自动定时来实现是吧?

    1 、按键精灵 里面也能写脚本 应该能实现的。
    2 、抓包 模拟调用 url 和相关参数
    3 、直接用 python 连接数据库 操作数据库表
    3 、要到前台的代码 自己改造了
    blueboyggh
        14
    blueboyggh  
    OP
       2015-10-28 14:15:31 +08:00
    @c24c4fe8 主要还是自己会的东西太少了,有想法无法实现,还是努力学习吧
    tusj
        15
    tusj  
       2015-10-28 14:25:00 +08:00
    只有我一个人觉得这个需求很奇奇怪怪吗?
    "公司对于我们受理工单的时长有考核,要求全天候保证 30 分钟内将工单受理"
    这个规定是在干什么啊这?
    blueboyggh
        16
    blueboyggh  
    OP
       2015-10-28 14:34:02 +08:00
    @tusj 没办法,说多了都是眼泪,这只是公司众多考核中的一项
    yeyeye
        17
    yeyeye  
       2015-10-28 15:04:53 +08:00
    如果你 js 不错,用 ajax 模拟,简单粗暴,具体抓包。

    按键精灵是绝对可以达到你的要求的,但是这个是 vb 语言的,虽然有面向普通人的无需编码的面板,但是觉得还是不妥,如果你会 vb 的语法,那用起来简直是如鱼得水。
    类似的还有 Autohotkey 和 autoit 。

    如果你想学习的话那估计按键精灵简单些( js 的那个也简单)。

    如果你不想学习的话,丢个需求到按键精灵的论坛去,应该价格很便宜很便宜的,毕竟这种需求新手都能实现而且很多新手想要练手
    jmc891205
        18
    jmc891205  
       2015-10-28 15:15:43 +08:00
    按我的理解 一个工单被改成受理 说明这个工单反映的问题已经被工作人员了解了 并且已经被分配给相应的人来处理
    像你这样要改成自动的 那这个过程还有什么意义呢?
    blueboyggh
        19
    blueboyggh  
    OP
       2015-10-28 15:19:48 +08:00
    @jmc891205 是这样,我们公司的工单呢,基本都类似于一个通知,这个通知往往在 24 小时内处理回复就可以,但是公司要求这个通知必须要在 30 分钟内点一下页面上的受理.....其实这个受理本来就是毫无意义的,因为通知下发之后,就已经确定处理人了,然后在工单处理时限内回复就可以了,但是公司却非让去按这个受理,很是苦恼啊...
    RFC2109
        20
    RFC2109  
       2015-10-28 15:27:09 +08:00
    你这么做你领导知道吗 233333
    blueboyggh
        21
    blueboyggh  
    OP
       2015-10-28 15:28:51 +08:00
    @RFC2109 领导爱知道不知道呗,反正他们也只管是不是按时受理了,并不管怎么实现的
    ssltest
        22
    ssltest  
       2015-10-28 16:30:50 +08:00
    你只需要把操作受理的流程里的请求抽取出来,然后写个定时抓取+发请求的脚本即可。
    iloveayu
        23
    iloveayu  
       2015-10-28 16:46:32 +08:00
    按键精灵太符合这情景了, WQM 内操作网页,可以通过扫描一个区域内的文字进行对比达到判断工单状态的目的,尽量模拟键盘快捷键操作减少出错几率。

    写好脚本后封装成小精灵一直运行,还不容易被发现。

    同样还可以写网页系统内填日志周报等等。

    @blueboyggh
    应付领导的事情,能用就行,不需要优雅,简单粗暴稳定即可。
    qinxi
        24
    qinxi  
       2015-10-28 17:07:25 +08:00
    @blueboyggh 按键精灵除了录制还可以 写脚本的.... 很对函数可以调用.. 搜索(应该有吧.我没怎么详细使用) 移动鼠标,点击.各种 .挺简单的
    blueboyggh
        25
    blueboyggh  
    OP
       2015-10-28 20:54:41 +08:00
    @iloveayu 用按键精灵的话,我电脑是不是就干不了别的了?
    blueboyggh
        26
    blueboyggh  
    OP
       2015-10-28 20:55:04 +08:00
    @qinxi 用按键精灵的话,我电脑是不是就干不了别的了?
    iloveayu
        27
    iloveayu  
       2015-10-28 21:38:46 +08:00 via iPad
    @blueboyggh 按键精灵运行后最小化就可以了,或者不管那个窗口。

    也可以在虚拟机中跑按键精灵。
    visonnn
        28
    visonnn  
       2015-10-28 21:43:53 +08:00
    首先想到的是按键精灵和 AHK

    噢大家想的都一样哈哈哈哈
    qinxi
        29
    qinxi  
       2015-10-28 21:58:18 +08:00
    @iloveayu 正解..当初刚大一的时候我就是这么干的 虚拟机运行按键精灵 却换出来 enjoy~
    xenme
        30
    xenme  
       2015-10-28 22:09:35 +08:00 via iPhone
    请求简单的话直接发包
    Mavious
        31
    Mavious  
       2015-10-28 22:11:40 +08:00 via Android
    前两个月刚帮人弄了自动签到。
    有两种方法(本人不是程序员):
    vbs :慢慢找网页元素吧,把元素找出来,然后执行 click !用 firebug 什么的都可以,反正找一个趁手的网页元素分析插件,搭配 vbs 模拟登陆可破。
    按键精灵,不用动脑子,直接录制屏幕就行了。此方法较不稳定,容易受到屏幕分辨率,窗口位子,意外突发的弹窗等影响。
    听说有人可以通过抓包,伪造 cookies ,直接 post ,这是最强的,最安全,最不容易受影响的后端操作方法。反正我是没这本事写啦。如果有人懂这个方法大致的教程,欢迎艾特我。
    对了,按键精灵论坛有大量高手出没。赶紧大海捞针去,捞一段代码改改就成你的啦!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1044 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 19:17 · PVG 03:17 · LAX 12:17 · JFK 15:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.