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
140
2019.05.21 Code for AICHI スキルシェア「RPAを体験しよう」
KMiura
May 21, 2019
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
72
Pythonでルンバをハックしてみた
miura55
0
150
あなたの知らないクラフトビールの世界
miura55
0
330
Storage Browser for Amazon S3を触ってみた + α
miura55
0
200
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
210
あのボタンでつながるSORACOM
miura55
0
130
Postman Flowsで作るAPI連携LINE Bot
miura55
0
380
Lambdaと共に歩んだAWS
miura55
3
830
Other Decks in Technology
See All in Technology
Flutterでキャッチしないエラーはどこに行く
taiju59
0
220
人工衛星のファームウェアをRustで書く理由
koba789
9
6k
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
150
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
2
320
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
480
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
3
530
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
3
530
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
11
4.5k
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
1
190
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
200
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
260
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Site-Speed That Sticks
csswizardry
10
810
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Bash Introduction
62gerente
615
210k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Why Our Code Smells
bkeepers
PRO
339
57k
GraphQLとの向き合い方2022年版
quramy
49
14k
RailsConf 2023
tenderlove
30
1.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Documentation Writing (for coders)
carmenintech
74
5k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
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文で
コード例