SlideShare a Scribd company logo
1 of 13
embeddable pythonで
こっそりPython Activityする
Yoshihiko Miyaichi
Technical evangelist, Business Architects Inc.
| Lightning Talk. 8/10 RPALT1
| Lightning Talk. 8/10 RPALT2
• Yoshihiko Miyaichi
• Technical evangelist, Business Architects Inc.
• Social
• https://www.facebook.com/miyaichi
• https://twitter.com/miyaichi
• https://medium.com/@miyaichi
• https://github.com/miyaichi
RPAプロジェクトが進んでくると
いろいろ反響があります。
• ものすごく楽になりました
• こんなことも自動化できるのですか
• 今まで何で手でやってたんだろう
| Lightning Talk. 8/10 RPALT3
そしてその後、いろいろな要望が
• こんなの、あんなのできますか?
できると思います
• このExcel、行列入れ替えられますか?
Excelで開いてキーボードショートカットで..
• ピボットテーブルお願いします、グラフも書いてください。
えっ
• 機械学習とかお願いします。
えっ
そろそろPythonでやりたいなぁ..
| Lightning Talk. 8/10 RPALT4
そこで、Python Activity
UiPathのワークフローからPythonが呼べると開発部門では盛り上がりますが、
IT部門に話を持っていくと
• Pythonって何?
データサイエンスとかでよく使われるコンピュータ言語で..
• インストールとか必要なの?
• ええ、各PCごとに..
えっ
• バージョンが2系と3系の2種類ありまして(32bit/64bitとかも)
えっ
• あと、pipっていうツールでパッケージもいろいろインストールする必要が
えっ
「ちょっと無理」という話になります
| Lightning Talk. 8/10 RPALT5
そんなとき、 embeddable python
embeddable python:インストール不要の組み込み用のpython
• インストール不要でPCの環境を汚染しない
• 軽量(14MB)
• pipも使える
ということは
UiPathのフォルダの中に入れてしまえば、インストールなしで
Python Activityできる!
| Lightning Talk. 8/10 RPALT6
早速準備
| Lightning Talk. 8/10 RPALT7
• ダウンロードして展開
• https://www.python.org/downloads/windows/
• Windows x86 embeddable zip file のリンク
• Python Scopeがサポートしているもの(2系と3系どちらもあります)
• pipの導入
• pythonNN._pthの"import site"をuncomment
• https://bootstrap.pypa.io/get-pip.py
• > python get-pip.py
• 必要なパッケージを導入
• > python -m pip install <package>
使ってみる
| Lightning Talk. 8/10 RPALT8
• 空のWorkflowを作成
• ワークフローフォルダーにembeddable pythonフォルダをコピー
• “Python Scope”でコピーしたフォルダを指定
• “Load Python Script”でpythonのコードをロード
• “Invoke Python Method”でpython の関数を実行
• “Get Python Object”戻り値をUiPathの変数に取り出す
• 結果を表示
で、どうする
• プロジェクトにPython Activityの利用を認めてもらう
• UiPathだけじゃ無理だけど、PythonだとできるWorkflowを作る
• ちょっとAI風味だとなおよい
というわけで「顔写真切り抜きロボ」を用意しました。
https://github.com/miyaichi/PhotoCropping
| Lightning Talk. 8/10 RPALT9
顔写真切り抜きロボ
• 誰かが入社すると、社員証とかのために顔写真が必要になります
が
• 総務や人事の人が写真を取るけど、その都度サイズが違う
• Photoshopとか使えないので、サイズ通りに切り抜けない
• 顔のサイズもバラバラ
• なぜかファイルサイズが異常に大きかったり
• gifだったりjpgだったり
• こうした課題を解消するため
• フォルダにある写真ファイルをロード
• OpenCVで顔認識して、顔の位置とサイズをきめる
• いい感じで切り取ったあと、縦横サイズを規定通りに変更
• 処理済みフォルダに書き出す
| Lightning Talk. 8/10 RPALT10
作成のポイント
• OpenCV
• > python -m pip install opencv-python
• 学習済の分類器のデータ
• https://github.com/opencv/opencv/tree/master/data/
haarcascades
• haarcascade_frontalface_alt.xml がよさそう
• 顔認識だと髪の毛は認識されないので、微調整が必要
| Lightning Talk. 8/10 RPALT11
デモ
| Lightning Talk. 8/10 RPALT12
一つ問題が
• いい感じのロボですが、パッケージサイズが結構あって、デフォルト
のOrchestrator(というかIIS)の設定だとアップロード
(Publish)できません。
※アップロードファイルの制限(初期値)は30M
• 「このロボをうまいこと説明・認知させ、設定変更してもらいましょ
う」がよさそう
結論
まずはこっそりPython Activityして認知
| Lightning Talk. 8/10 RPALT13

More Related Content

Similar to Lightning talk. rpalt 8.10

あえての Info path ~これであと5年は戦える?~
あえての Info path ~これであと5年は戦える?~あえての Info path ~これであと5年は戦える?~
あえての Info path ~これであと5年は戦える?~mokudai masayuki
 
TFLite_and_PyTorch_Mobile
TFLite_and_PyTorch_MobileTFLite_and_PyTorch_Mobile
TFLite_and_PyTorch_Mobileyusuke shibui
 
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったかSIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったかYou_Kinjoh
 
IoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxIoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxYasuhira Chiba
 
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナーakihiro uehara
 
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞく
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞくレイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞく
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞくFumiya Sakai
 
第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会健一 辰濱
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Reportgree_tech
 
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワークリモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワークMaehana Tsuyoshi
 
Pythonで自動化した話1
Pythonで自動化した話1Pythonで自動化した話1
Pythonで自動化した話1Masato Fujitake
 
SharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングSharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングHirofumi Ota
 
SharePoint はグループウェアか?
SharePoint はグループウェアか?SharePoint はグループウェアか?
SharePoint はグループウェアか?Hirofumi Ota
 
最近の業務やAndroid関連のインプットと振り返り
最近の業務やAndroid関連のインプットと振り返り最近の業務やAndroid関連のインプットと振り返り
最近の業務やAndroid関連のインプットと振り返りFumiya Sakai
 
DevRel Meetup27 Igarashi-pub
DevRel Meetup27 Igarashi-pubDevRel Meetup27 Igarashi-pub
DevRel Meetup27 Igarashi-pubTomohiro Igarashi
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築You&I
 
Python野球クラスタの紹介
Python野球クラスタの紹介Python野球クラスタの紹介
Python野球クラスタの紹介Shinichi Nakagawa
 
0 open capi_meetup20190225
0 open capi_meetup201902250 open capi_meetup20190225
0 open capi_meetup20190225Yutaka Kawai
 
統一Qtコミュニティー
統一Qtコミュニティー統一Qtコミュニティー
統一QtコミュニティーYikei Lu
 

Similar to Lightning talk. rpalt 8.10 (20)

あえての Info path ~これであと5年は戦える?~
あえての Info path ~これであと5年は戦える?~あえての Info path ~これであと5年は戦える?~
あえての Info path ~これであと5年は戦える?~
 
IoTの原点
IoTの原点IoTの原点
IoTの原点
 
TFLite_and_PyTorch_Mobile
TFLite_and_PyTorch_MobileTFLite_and_PyTorch_Mobile
TFLite_and_PyTorch_Mobile
 
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったかSIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
 
IoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxIoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptx
 
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー
20100701 01 ツイッター浜名湖_プレゼン_i_phoneで動くロボットセミナー
 
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞく
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞくレイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞく
レイヤー分けをしたアーキテクチャで作るiOSアプリ&バックエンドのサンプル実装をのぞく
 
Hiroshima.rb on github
Hiroshima.rb on githubHiroshima.rb on github
Hiroshima.rb on github
 
第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワークリモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワーク
 
Pythonで自動化した話1
Pythonで自動化した話1Pythonで自動化した話1
Pythonで自動化した話1
 
SharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングSharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディング
 
SharePoint はグループウェアか?
SharePoint はグループウェアか?SharePoint はグループウェアか?
SharePoint はグループウェアか?
 
最近の業務やAndroid関連のインプットと振り返り
最近の業務やAndroid関連のインプットと振り返り最近の業務やAndroid関連のインプットと振り返り
最近の業務やAndroid関連のインプットと振り返り
 
DevRel Meetup27 Igarashi-pub
DevRel Meetup27 Igarashi-pubDevRel Meetup27 Igarashi-pub
DevRel Meetup27 Igarashi-pub
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
Python野球クラスタの紹介
Python野球クラスタの紹介Python野球クラスタの紹介
Python野球クラスタの紹介
 
0 open capi_meetup20190225
0 open capi_meetup201902250 open capi_meetup20190225
0 open capi_meetup20190225
 
統一Qtコミュニティー
統一Qtコミュニティー統一Qtコミュニティー
統一Qtコミュニティー
 

Lightning talk. rpalt 8.10