SikuliX Getting Started
SikuliX Getting Started
RPA
Robotic Process Automation,机器人操作自动化
转自: https://www.zhihu.com/question/324352017/answer/683314795
RPA的概念是由一家研发此类软件的IT创业公司和一家研究机构在2012年所提出的,这个时间点远迟于机器学习(1959年)和深度学习(1986年)两个概念的提出,并逐步在一些从事外包服务领域以及为外包服务提供软件的厂商中推广开来。所以RPA更多是通过厂商和用户不断的实战总结、大家口口相传后而逐步推广开来的一种概念,从没有哪家机构给出过一统江湖的权威解释。
RPA是一种软件技术,也就是说RPA中所谓的“机器人”,并不是指有物理形态、物理实体的那些机器人,区别于工厂中的机器手臂、自动设备、家里的扫地机器人,以及银行大堂的迎宾机器人,说到底它就是计算机中的程序代码,所以RPA也被称作软件机器人(Software Robot),把运行在RPA中的机器人称作Bot。
RPA技术的核心能力是可以模拟和替代人工劳动。工厂中那些物理形态的机器人替代的是工人的体力劳动,扫地机器人替代的是家庭主妇的清洁劳动,而RPA这种存活在计算机里的软件替代的是办公室里面员工的脑力劳动,以及诸如敲击键盘、点击鼠标、切换页面等系统操作动作。随着全社会进入信息化时代,目前几乎所有企业中的员工以及人们在日常生活都需要依赖于计算机的使用。一些大型企业更是同时拥有多套应用系统,员工在工作中经常需要登录不同的系统进行业务处理,系统处理过程中就必然存在着大量的数据录入、数据核对以及数据报告等工作,而RPA通过模拟人工操作的方式很好的解决了这类问题。
RPA模拟人类实现用户在计算机中的操作行为,那么流程中只要涉及到用户界面的操作过程就都有可能被自动化。
通过RPA软件“机器人”可以捕捉并模拟我们日常的键盘、鼠标操作等人机交互行为,它们可以完成识别、触发、通信、文本生成等任务,自动执行重复性的业务流程。
SikuliX
What is SikuliX
Getting Started
SikuliX 是一种RPA工具
下载最新版IDE和Jython:https://raiman.github.io/SikuliX1/downloads.html
Jython: 用于Python调用Java程序的工具
想要使用Ruby语言的童鞋也可以下载JRuby
将下载的 sikulix.jar
和 jython-standalone-2.7.1.jar
放在同一个目录下
运行IDE:
java -jar sikulix.jar -v
IDE界面:
点击 Take screenshot
按钮,如果报错找不到 opencv_java 或弹出这个网页,则需要编译Java版的OpenCV。如果是其他原因则应“对症下药”。以下是编译OpenCV的方法。另外,写这篇博客的时间sikulix的最新版本是2.1.0,对应的是OpenCV 4.1.x,如果下载旧版本的sikulix,比如2.0.x,则需要OpenCV 3.x。
# a demo: open chrome and goto www.baidu.com automatically
find("Selection_006.png")
doubleClick("Selection_006.png")
click(Pattern("1580803137359.png").similar(0.53))
type(Pattern("Selection_017.png").targetOffset(-197,-1), "https://www.baidu.com/")
type(Key.ENTER)
time.sleep(3)
Selection_006.png:
1580803137359.png:
Selection_017.png:
Compile OpenCV-4.1.2 (for ubuntu16.04)
prepare
sudo apt-get install -f
sudo apt-get update
# dependencies
sudo apt-get install build-essential checkinstall cmake pkg-config yasm
sudo apt-get install git gfortran
sudo apt-get install libjpeg8-dev libjasper-dev libpng12-dev
# If you are using Ubuntu 14.04
sudo apt-get install libtiff4-dev
# If you are using Ubuntu 16.04
sudo apt-get install libtiff5-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
sudo apt-get install qt5-default libtbb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libfaac-dev libmp3lame-dev libtheora-dev
sudo apt-get install libvorbis-dev libxvidcore-dev
sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev
sudo apt-get install x264 v4l-utils
sudo apt-get install libfreetype6-dev libpng-dev libpng12-dev
sudo apt-get install libgdk-pixbuf2.0-dev libpango1.0-dev
sudo apt-get install libcairo2-dev libfontconfig1-dev
sudo apt-get install libfontconfig1-dev libfreetype6-dev libxft-dev
sudo apt-get install libgtk2.0-dev pkg-config
apache ant
sudo apt-get update
sudo apt-get install ant
cmake-gui
sudo apt-get install cmake-qt-gui
cmake-gui --version
cmake-gui
Configure
https://opencv-java-tutorials.readthedocs.io/en/latest/01-installing-opencv-for-java.html
- 点击两次
Configure
,让背景变成白色,如果有红色背景,修改其配置使其变成白色。
- 其中关于Java的配置:
- 然后点击
Generate
编译
- 在命令行进入到Opencv的build目录,输入
make -j8
进行编译 - 编译完成后,
build/lib/
下会有libopencv_java412.so
文件;build/bin
下会有opencv-412.jar
文件,则表示编译成功,执行sudo make install
进行安装 - 创建软连接:
sudo ln -s ~/DevTools/opencv-4.1.2/build_java/lib/libopencv_java412.so /usr/lib/libopencv_java.so