Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2019.05.21 Code for AICHI スキルシェア「RPAを体験しよう」
Search
KMiura
May 21, 2019
Technology
0
130
2019.05.21 Code for AICHI スキルシェア「RPAを体験しよう」
KMiura
May 21, 2019
Tweet
Share
More Decks by KMiura
See All by KMiura
Lambdaと共に歩んだAWS
miura55
3
400
Bedrock Knowledge baseを使って今年の上半期のニュースを聞いてみた(リベンジ編)
miura55
0
170
Is it wrong to use a web framework with Lambda?
miura55
0
130
Bedrock Knowledge baseを使って今年の上半期のニュースを聞いてみた
miura55
0
150
AWS×IoTについて語り合う会
miura55
0
93
クラウドを活用して家電をハックしてみた
miura55
0
98
Amplify Gen2でLambda構築してみた
miura55
0
130
Amplify Gen2でLambda構築してみた
miura55
1
910
Amplify Gen2がGAされたので試してみた
miura55
0
150
Other Decks in Technology
See All in Technology
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
190
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
780
強いチームと開発生産性
onk
PRO
36
12k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
130
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
930
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Platform Engineering for Software Developers and Architects
syntasso
1
520
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
540
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
150
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
330
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Adopting Sorbet at Scale
ufuk
73
9.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
Facilitating Awesome Meetings
lara
50
6.1k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Optimizing for Happiness
mojombo
376
70k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
The Cult of Friendly URLs
andyhume
78
6k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
RPAを体験しよう Code for Aichi スキルシェア 2019年5月21日(火)
RPAって何? • ロボティック・プロセス・オートメーション(Robotic Process Automation ) の略 • ホワイトカラーのデスクワーク(ここでは定型作業全般)をパソコンのソフト ウェアが作業を代行・自動化する概念
• 「デジタルレイバー(Digital Labor)」や「仮想知的労働者」とも呼ばれてい る
事例 • 名大病院ではRPAテクノロジーズ社の「BizRobo!」を導入し、2019年5月から本 格運用を開始すると発表 • 本格導入に先立ち、2018年12月から2019年2月まで業務の洗い出しを行い、総務 課、人事労務課、経営企画課、経理課、医事課の各部署で、RPA導入の実証実験 を実施 https://www.itmedia.co.jp/enterprise/articles/1904/17/news071.html
RPAの種類 https://seleck.cc/rpa
実際に動かしてみる ⚫ 本来はコーディングをしなくても動かせる ➢高くて手を出せない… ⚫ コーディングがいるがフリーの物を使う ➢Code for AICHIだし多少のコーディングぐらいいいよね… ⚫
今回使用するのは、「SikuliX」
SikuliX • オープンソースソフトウェアのRPAツール • コーディングが必要だが、その分簡易的な処理なら自由にカスタマイズできる • 画面上のスクショと照合する機能があるので何かをクリックする操作は簡単 • その他にもキー入力を行ったり、文字を入力することも可能 •
コーディングはpythonベースかRubyベースが選べる 今回はpythonベースで動かします(Rubyでやりたい方はそちらをどうぞ、ただしサ ポートはしません)
インストール • Javaのインストール https://www.java.com/ja/download/manual.jsp 必ず64ビット版をインストール、32ビット版は動作しません • Cドライブ直下に「RPA」フォルダを作成し、SikuliXの保存先を指定 •
下記のリンクからSikuliXをインストール https://raiman.github.io/SikuliX1/downloads.html 実行ファイル 開発環境
起動方法 ダブルクリック ※実行ファイルが消えるが、所定 のフォルダに移動しただけなので 問題なく起動する
実際にスクリプトを書いてみる • なにかクリックをしてみる クリックしたいアイコンをスクショ 以下のコマンドを入力するだけ click([スクショした画像])
ダブルクリックをするなら、doubleClick() ① ② click([ここにカーソル]) ③ ↓Ex)タスクバーにあるChromeを起動したいとき
実行してみる • 書いたスクリプトを任意の場所に保存→実行ボタン(またはCtrl + R)で実行 • クリックしてくれましたか? • 多少ずれることがあるが、フリーソフトなのでしょうがない
マッチングプレビューの一致率を上げたりターゲットオフセットでカーソルの位置を調 節すると改善することがある 基本はこれだけ!!
キー入力したい • typeコマンドでOK! Ex) type(Key.ENTER)→エンターキーを押すコマンド • もしもショートカットキーのように複数のキー入力をしたいときには「,」区切 りで実行できる!
Ex) type(“c”, Key.CTRL) • 文字を入力もできる 一部の記号や日本語入力には対応していない んじゃどうすればいいの?
文字入力をしてみる • paste(文字列)でOK! • 日本語に入力するときには、paste(u”こんにちは”)
その他に知っておくといいコマンド • run(“path¥to¥exeFile”)exeファイルを起動させる • wait(秒数)で指定した秒数処理を止める なにか表示されるまで処理を待機したいときは、wait(画像, 秒数) • dragDrop(開始の画像,
移動先の画像)で指定した画像からターゲットの場所へド ラッグアンドドロップ • その他if文や繰り返し処理を行うことが可能 https://valmore.work/technology/sikulix-basic-tutorial/
課題
課題 • ブラウザを起動しヤフー路線を開く • 路線検索から東岡崎から名古屋までの路線検索をする • 検索結果の中からルート1に表示された運賃をコピー • メモ帳を開き、コピーした値を貼り付ける
ヒント① キー SikuliXでの入力 Ctrl Key.CTRL Windowsキー Key.WIN Alt Key.ALT TABキー
Key.TAB Enterキー Key.ENTER
ヒント② • 金額を探すにはどうすればいい? 実際の画面の位置関係からマウスカーソルの位置関係を指定して操作を行う • アプリを立ち上げる処理を行い起動したが次の処理を行わずに終了してしまう アプリを起動した時に必ず表示されるもの(例えばアプリのアイコンなど)が表示され るまで待機する処理を加えると良い
正解例(Edgeでの実行例)
応用例 一週間の出欠管理表を 作ってみる
どう作る? • 毎回日付を手打ちし直すのは面倒→pythonの標準ライブラリのdatetimeを使っ て入力 • 同じ入力を何度もやるのは面倒→同じ処理はfor文で
コード例