Slide 1

Slide 1 text

時刻表検索アプリ を作る

Slide 2

Slide 2 text

自己紹介 株式会社アイシーソフト https://www.icsoft.jp/ @MiTo60448639 https://qiita.com/MiyakeMito おうじゃさんといっしょMVP受賞(2021/03)

Slide 3

Slide 3 text

おうじゃさんといっしょ 毎週金曜日 19:00 ~ 23:00? Microsoft MVP おうじゃ(前田)さん はじめ 365 プロフェッショナルな方々で 形成されるコミュニティ https://oujasan-to-issho.connpass.com/

Slide 4

Slide 4 text

アジェンダ 時刻表アプリで利用する Power Automate Desiktop スクレイピング SharePoint Online リストへのデータアクセス LINE と Power Automate 通信方法 を理解する

Slide 5

Slide 5 text

時刻表検索アプリ

Slide 6

Slide 6 text

しくみ ①スクレイピング ②追加 ③要求 ⑤応答 ④取得 時刻表 Power Automate Desktop Power Automate

Slide 7

Slide 7 text

PADでの スクレイピング

Slide 8

Slide 8 text

テーブルのスクレイピング スクレイピングしたテーブルは、 「テキストの分割」で リスト変数として扱える。 路線ごとの停車駅一覧をスクレイ ピングする。

Slide 9

Slide 9 text

行数や列数が変動するテーブル

Slide 10

Slide 10 text

テーブルを動的にスクレイピング ① UI要素にループIndexを設定 ② 『列』や『行』の末端は『Web ページに次が含まれるか(UI要 素)』で判定 html > body > table > tbody > tr:eq(%Loopindex1%) > td

Slide 11

Slide 11 text

注意 今回利用しましたYahoo路線案内は問題ありませんが (2021年4月現在) 利用規約で自動化を禁止しているサイトも存在します。 ご注意ください。

Slide 12

Slide 12 text

PADから SPOリストを編集

Slide 13

Slide 13 text

PADからSPOリストに接続 『SQL接続を開く』で接続 Provider=Microsoft.ACE.OLEDB.12.0;WSS; IMEX=0;RetrieveIds=Yes; DATABASE=[サイトURL];LIST=[リストID]; 『SQL接続を閉じる』で切断

Slide 14

Slide 14 text

PADからSPOリストデータを編集 『SQL ステートメントの実行』で SQLによるデータ操作が可能 ・取得 SELECT ・追加 INSERT INTO ・更新 UPDATE ・削除 DELETE FROM SQLの中に変数が指定可能 SELECT station,arrival,departure FROM List WHERE station = '%NewVar%'

Slide 15

Slide 15 text

LINEと POWER AUTOMATE の連携

Slide 16

Slide 16 text

LINEの設定 ① プロバイダーの作成 ② チャンネルの作成 Messaging APIの設定

Slide 17

Slide 17 text

Power Automate の設定 ① LINEからの受信 ② LINEからのメッセージを取得 ③ LINEへの送信 Flex Message を利用すると リッチなメッセージが送れる

Slide 18

Slide 18 text

DEMOします

Slide 19

Slide 19 text

注意!! LINEとの通信部分は 有償ライセンスが必要です 期限なし無償の学習/開発用(個人向けプラン)がおすすめ Power Apps Community Plan https://powerapps.microsoft.com/ja-jp

Slide 20

Slide 20 text

フローの説明

Slide 21

Slide 21 text

フローの説明 時間が残っていれば・・・

Slide 22

Slide 22 text

まとめ PADのスクレイピングとSPOリストの編集 LINEとPower Automateとの通信 で 素敵アプリを作成いただけると嬉しいです

Slide 23

Slide 23 text

本日の内容 ■ LINEから「ふだん使う路線の時刻表検索」を、Power Automate Desktop と Power Automate と Sharepoint Online で作る https://qiita.com/MiyakeMito/private/fb07c535d1f796a97929 ■ Power Automate DesktopでWebのUI要素有無を判断すると何かと 便利! https://qiita.com/MiyakeMito/items/f0bb3919dc219582d76d ■ Power Automate Desktop で SharePoint Onlineリストのデータを ダイレクトに取得や操作する方法 https://qiita.com/MiyakeMito/items/4c9408744d7ed3486770 ■ Power Automate と LINE で通信する方法 https://qiita.com/MiyakeMito/items/fb07c535d1f796a97929

Slide 24

Slide 24 text

ありがとうございました