【程序员大大进】请教一个自动化过程【汇报进度】

  • B
    Benthal
    跟各位汇报一下进度

    1. AUTOIT确实好用傻瓜,语言也简单易懂,有内部EXCEL函数#include_EXCEL.au3,循环跟VB很像,在youtube看了几个教程,就初步入门了,实现了我的第一步目标:找到order#对应的内部编号

    2. 由于公司的ERP使用的Citrix编写的,造成AUTOIT的finder tool无法找到任何ID和内容,变成最单纯的模拟click和sendkey,精确度非常受影响,所以变通一下,只要找到order对应的内部编号就行,然后用firefox再次打开,然后用selenium webdriver查找内容,抓出剩下的内容.

    现在进度是1完成了,然后循环还没写,今天晚上写。昨天晚上selenium webdriver看了教程,配合firebug, 还是很傻瓜的。

    还有2个问题请教

    1.还不知道如何让selenium把找到的内容复制到excel
    2.有没有针对Ctrix的软件,detect到其中的内容,就像firebug, Finder tool这种的?

    吐槽-------selenium的教程是个印度老录制的,英语酸爽

    ================================================================================

    我现在想实现的过程是

    1. 我有1万条数据,都是下单记录,保存在EXCEL里面
    2. 把每一个下单记录输入一个ERP中,再通过几个点击,跳出一个细节窗口,找到窗口内的几个数据,复制到EXCEL中

    【例如】订单号80000000,输入到ERP中,过程中会跳出几个窗口,都点击确定,然后等数据load完毕,点击其中某个位置的某个字符,跳出另外一个细节窗口,然后在细节窗口中,copy paste几个数据到相对应的EXCEL表中,由此循环1万次.

    请问这样的自动化过程,哪种软件实现起来比较快,谢谢各位

    [本帖最后由 Benthal 于 2015-11-3 15:33 编辑]
  • r
    riva128
    直接EXCEL表用订单号去关联ERP里的表应该最快
  • m
    myquell
    怎么有种程序员躺枪的感觉,虽然我并不是。。。
  • f
    freetail
    你连这ERP是个什么情况都不说的么??
  • 8
    888999000
    键盘精灵
  • e
    engp0447
    autoit,可以编程解决大部分windows程序的自动化问题。少数奇葩windows程序无法识别窗口中的控件,可以考虑使用sikuli这种基于图形识别的自动化工具。其他自动化工具也很多,记住,凡是可以用于自动化测试的工具都可以改变思路用于日常工作的自动化。然后你还可以研究一下你用的erp系统有没有什么接口,支持import什么格式吗,有时候简单写一个格式转换小程序就能解决问题。

    本帖最后由 engp0447 于 2015-10-29 19:35 通过手机版编辑
  • B
    Benthal
    我不懂要说什么,你想知道什么
  • y
    yfl2
    这么基础的数据导入导出,erp实现的人不会搞不定啊
  • B
    Benthal
    谢谢,import肯定需要长时间的IT roadmap,我需要更快的解决方案

    我先研究一下你说的这几个软件,谢谢兄弟
  • t
    turtlet008
    先说说是什么erp吧
  • B
    Benthal
    感谢关注,是公司自己研发的用于销售下单的ERP, 我能看到的就是这好像是用什么Ctrix的技术做的,我不太懂
  • t
    turtlet008
    既然自己公司研发的找it导入更快吧。
  • B
    Benthal
    500强公司,IT牛逼的跟煞笔一样,都在印度,而且这个ERP是global在用,想改,比登天还难
  • 笑红尘
    按键精灵,autoit,autohotkey(简称ahk)都可以
    按键精灵上手简单点,主要是图形化和中文化相对完善。然而国产,所以广告啥的比较烦
    autoit功能最丰富(印象里)。
    ahk体积最小,语法也简单。
    都可以编译为exe,脱离环境使用。
  • e
    engp0447
    Citrix的autoit可能不支持,我们集团报销系统就是citrix的,每个月都要远程登录填报表,我研究了一番最后是用sikuli实现的,但由于是基于图形识别的,效率低速度慢,而且不够稳定,对于我的需求(每个月填张报销单或出差报告)足够了,对于你的大批量数据操作不一定可靠。(Sikuli是基于Jython语言的(Python的一个变种))。Citrix自己好像就有正经的工作流自动化套件,你可以研究一下。

    本帖最后由 engp0447 于 2015-10-29 20:37 通过手机版编辑
  • 笑红尘
    以LZ的需求,也就是激活后台窗口,发送按键这个程度
    我觉得AHK都够,别说autoit了。
  • B
    Benthal
    确实需求很简单,我就是不知道该怎么弄.

    我前两个月自学VBA,最后写了一个将近2600多行的自动化程序(不是一个程序,N个拼凑的),效率提高数倍,觉得有点意思,就像实现一些之前只敢想,不敢做的事儿
  • e
    engp0447
    有将日常工作自动化的这个想法本身就很了不起了。大部分人根本没这个想法,只会抱怨软件难用,工作量大。
  • 总是注册不成功
    高,赞一个。
  • 笑红尘
    嗯,有这水平,去自学ahk搞点小东西没问题
    vba的语法和这几个还是挺接近的
  • n
    n2
    这种东西难道不是按键精灵最好么,先不说是不是最强

    起码按键精灵在 鼠标键盘位置及图形识别上都有足够傻瓜的操作了。。。
  • B
    Benthal
    其实我也试验过,但是按键精灵公司电脑不让用,连打都打不开,就放弃了,谢谢关注
  • B
    Benthal
    谢谢鼓励,我学习一下你提供的方法,跟您汇报随后的进度
  • B
    Benthal
    多谢鼓励:D
  • 客观游戏饭
    一直在用ahk,感觉超赞。大多数会遇到的问题都能解决。自己懒得写脚本,就用macrocreator来记录下操作,然后编辑一下,然后输出为ahk.exe。但是最近遇到一个问题,用安卓模拟器Droid4X的时候不支持ahk,最后解决方案是自己写了一个winform程序,配合罗技G105编程键盘来实现半自动化。说是“半”是因为数据索引还是要靠手动输入到winform程序里,程序加载数据(复制到剪切版)同时激活模拟器窗口,然后激发编程键盘预设的脚本来粘贴数据到指定位置。
  • f
    freetail
    是web版还是客户端版
    web版本可以python+xlrd+xlwt+request+beautifulsoup 或者python+xlrd+xlwt+selenium+beautifulsoup
    客户端话看你能不能找到数据库接口或者api什么的
    好像说得很复杂的样子,当我在胡扯 啦啦啦啦啦啦
  • s
    squallssck
    路过看看
  • k
    klites
    遇到这种情况都是让我写个导入导出功能给客户用。。。为什么突然有一种哀伤的感觉。。。
  • B
    Benthal
    更新一下进度
  • l
    lvcha
    十多年前的段子是

    “咦?” “啊?!” “屁!”