headless chromeでRPA(?) - #IoTLT の管理自動化 #RPALT
by
n0bisuke
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
@n0bisuke headless ChromeͰRPA? - IoTLT #RPALT 2018/5/9
Slide 2
Slide 2 text
ੁݪ ͷͼ͚͢ dotstudio, Inc. ɾWeb Engineer ɾfrom Iwate / Miyagi ɾMicrosoft MVP (Node.js) ɾLINE API Expert (ࠃ5ਓ/ੈք22ਓ) ɾσδλϧϋϦουେֶେֶӃ ඇৗۈߨࢣ ɾIoTLT ओ࠵ nobisuke sugawara
Slide 3
Slide 3 text
dotstudio, inc. ཧ೦ : Ϟϊͮ͘ΓΛָ͠ΉਓΛ૿͢ 2016ۀ
Slide 4
Slide 4 text
IoTʹؔ͢Δतۀɾݚम / ॳ৺ऀ͚σόΠεఏڙͳͲͳͲ
Slide 5
Slide 5 text
※աڈͷLTͷϦϝΠΫͰ͢ɻ IoTLT vol32 at αϙʔλʔζ / https://speakerdeck.com/n0bisuke/iotltfalseguan-li- woiothua-tupokusiteiruhua-number-iotlt
Slide 6
Slide 6 text
Πϕϯτओ࠵ऀ͋Δ͋ΔͳਏΈ
Slide 7
Slide 7 text
Πϕϯτओ࠵ऀ͋Δ͋ΔͳਏΈ ൃදऀूΊ
Slide 8
Slide 8 text
Πϕϯτओ࠵ऀ͋Δ͋ΔͳਏΈ ൃදऀूΊ ൃදऀͷཧ
Slide 9
Slide 9 text
Πϕϯτओ࠵ऀ͋Δ͋ΔͳਏΈ ൃදऀूΊ ൃදऀͷཧ
Slide 10
Slide 10 text
IoTLT - ࠃ࠷େͷIoTίϛϡχςΟ ɾconnpass1Ґ(ͩͬͨ) - 6538ਓ ɾຖ݄։࠵͍ͯ͠ΔLTձ ɾํ։࠵εϐϯΦϑଟ - ΤϯλʔϓϥΠζɺSIerɺϔϧεέΞɺVUIͳͲ
Slide 11
Slide 11 text
IoTLTͷొஃืू facebookάϧʔϓͷίϝϯτͰߘΛूΊΔ
Slide 12
Slide 12 text
ൃදऀཧͷਏ͞ͷਅ
Slide 13
Slide 13 text
ൃදऀཧͷਏ͞ͷਅ ొஃऀ͔Βͷൃදใͷ ߋ৽࡞ۀ
Slide 14
Slide 14 text
IoTLTͷొஃऀืूϑϩʔ(ੲ)
Slide 15
Slide 15 text
͜Ε͕͚ͬ͜͏໘
Slide 16
Slide 16 text
͜Ε͕͚ͬ͜͏໘ ʮͬͺΓ͜ͷλΠτϧͰʂʯ ʮൃදॱ൪ม͑ͯཉ͍͠ʂʯ ʮॴଐม͑ͯཉ͍͠ʂʯ ߋ৽λΠϛϯά͕Ήͣ
Slide 17
Slide 17 text
࠷ۙొஃऀʹ GoogleεϓϨοτγʔτʹߋ৽ͯ͠Β͍ͬͯΔ
Slide 18
Slide 18 text
࠷ۙొஃऀʹ GoogleεϓϨοτγʔτʹߋ৽ͯ͠Β͍ͬͯΔ ͜ΕͰ͍ͩͿָʹͳͬͨɻࣗ༝ʹॻ͍ͯͶʙ
Slide 19
Slide 19 text
͚Ͳ·ͩ໘ εϓϨοτγʔτ -> connpass(MD)ม ݁ہͲ͔͜ͷλΠϛϯάͰ࠶ߋ৽͕ඞཁ
Slide 20
Slide 20 text
݁ՌԿ͕ى͖Δ͔
Slide 21
Slide 21 text
։࠵Ұिؒલ
Slide 22
Slide 22 text
։࠵Ұिؒલ ֎͔ΒݟΔͱ ͍ͭ·Ͱ ొஃऀ͕ू·Βͳ͍ ҋͷLTձ
Slide 23
Slide 23 text
ͱ͍͏͜ͱͰࣗಈԽ
Slide 24
Slide 24 text
Γ͍ͨ͜ͱΠϝʔδ
Slide 25
Slide 25 text
Γ͍ͨ͜ͱΠϝʔδ ͜͜ͷෆఆظߋ৽࡞ۀΛ ࣗಈԽͯ͠ఆظߋ৽ʹ
Slide 26
Slide 26 text
API͕͋Δ APIGETͷΈ POST͕ͳ͍
Slide 27
Slide 27 text
API͕͋Δ APIGETͷΈ POST͕ͳ͍ શͯAPIͰͷࣗಈԽݫ͍͠
Slide 28
Slide 28 text
Google Chrome v59~ ϔουϨεϞʔυରԠ
Slide 29
Slide 29 text
ϔουϨεϞʔυ? ɾίϚϯυϥΠϯ࣮ߦ ɾϓϩάϥϜ͔ΒChrome੍ޚ - ϑΥʔϜೖྗΤϛϡϨʔτ - DOMཁૉΞΫηε - εΫϨΠϐϯά ɾWebͳਓʹ͔ͳΓྑ͞Έ
Slide 30
Slide 30 text
ϥΠϒϥϦݕ౼
Slide 31
Slide 31 text
ߏ
Slide 32
Slide 32 text
DEMO?
Slide 33
Slide 33 text
શͯRPA(?)ʹ͠ͳ͍ ɾεϓϨοτγʔτAPIͪΌΜͱ͋Δ ͷͰͦ͜APIͰॲཧ ɾݫ͍͠ͱ͜ΖΛheadless chromeʹ ɾ҆ఆੑ૿͠·͢
Slide 34
Slide 34 text
ͦͷଞ
Slide 35
Slide 35 text
ͪͳΈʹશ෦JavaScriptͰ ɾSSΞΫηε ɾpuppeteer ɾRaspberry Pi <-> NFC ɾLINE BOT JS(Node.js)ൣғΧόʔͰ͖͍͍ͯΑʔ
Slide 36
Slide 36 text
ίʔυׂͱγϯϓϧ URLʹΞΫηεͯ͠εΫγϣࡱӨͯ͠อଘ͢Δͭ
Slide 37
Slide 37 text
͜ΕͰະఆࢭ..!
Slide 38
Slide 38 text
݁Ռ…
Slide 39
Slide 39 text
݁Ռ… ͕͍ࣗΕͳ͍ͱ
Slide 40
Slide 40 text
ࣗಈԽָ͍͠ ɾۀϑϩʔվળΊΜͲ͋͘͞͞Δ ͚ͲͦΕΛ࡞Δ͜ͱࣗମʹײಈ͕͋Δ ɾઌੜతͳ͋ΕʮRPAͰ͡ΊΔϓϩά ϥϛϯάೖʯͱ͔اըͯ͠ΈΑ͏ͱࢥͬ ͯΔΜͰ͚͢ͲͲ͏Ͱ͠ΐʁ
Slide 41
Slide 41 text
·ͱΊ ɾΠϕϯτϖʔδࣗಈߋ৽ ɾNode.js / headless Chrome / puppeteer ɾAPI͕ແ͍߹ແཧΓܨ͛ΒΕΔ ɾࣗಈԽͷΈ࡞ͬͯLTλΠτϧલ·Ͱ ܾ·Βͳ͍ਓ()ʹແҙຯ͔… ɾRPAϞϊͮ͘Γ࢝ΊΔ͖͔͚ͬʹͳΔ͔?