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
Golang_chromedp_slack_botでslackの絵文字自動生成ボットをつく...
Search
bmf_san
August 12, 2020
Programming
0
110
Golang_chromedp_slack_botでslackの絵文字自動生成ボットをつくってみた.pdf
bmf_san
August 12, 2020
Tweet
Share
More Decks by bmf_san
See All by bmf_san
AAPについて調べてみた
bmf_san
0
41
レーダーをつくる
bmf_san
0
32
契約テストとPactについて
bmf_san
0
78
5分でわかるSLO
bmf_san
2
110
権限について考える
bmf_san
2
120
自作HTTPルーターから新しいServeMuxへ
bmf_san
3
1.8k
古くなってしまったPHPフレームワークとPHPのバージョンアップ戦略
bmf_san
1
390
アジャイルワークショップ
bmf_san
0
160
Makuakeの認証基盤とRe-Architectureチーム
bmf_san
0
2.8k
Other Decks in Programming
See All in Programming
Deep Dive into Kotlin Flow
jmatsu
1
350
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
1.7k
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
160
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
240
Reading Rails 1.0 Source Code
okuramasafumi
0
230
Kiroで始めるAI-DLC
kaonash
2
590
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.6k
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
120
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
230
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
120
Featured
See All Featured
Making Projects Easy
brettharned
117
6.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
112
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Balancing Empowerment & Direction
lara
3
620
Building Flexible Design Systems
yeseniaperezcruz
328
39k
BBQ
matthewcrist
89
9.8k
How to Ace a Technical Interview
jacobian
279
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
SlackֆจࣈੜbotΛͭͬͯ͘Έͨ @bmf_san
CPUΛͭͬͨ͘ https://github.com/bmf-san/emoji-generator-slack-app
Slack botʹmention͢Δͱը૾ੜͯ͘͠ΕΔ 4FSWFS ը૾ੜ !CPUCMVFTLZCMVFTMBDLFNPKJ
Slack botͷ࡞Γํ ɾࠓճGoͰͭͬͨ͘ ɾGoͰSlack BotΛ࡞Δʹɺ͜ͷهࣄ͕͔Γ͢ ͍ͷͰৄࡉׂѪ →https://qiita.com/frozenbonito/items/ cf75dadce12ef9a048e9 ɾmentionʹԠ͢Δ͚ͩͷbotൺֱత؆୯ɻdialog ͱ͔interactiveͳ͍ͭ͠ɺͱ͍͏͔໘..
ը૾ੜͷ ɾGoͰը૾ॲཧˠඪ४ͷimageύοέʔδ͕͑Δ ɾimagemagickͷΑ͏ʹॆ࣮ ɾϞβΠΫॲཧɺը૾߹ɺτϦϛϯάɺςΩετඳ ըͱ͔ۃΊΔͱָͦ͠͏ͳύοέʔδ
imageύοέʔδ͏ʁ ɾͬͯΑ͍͕ࠓճΘͳ͔ͬͨ ɾը૾ੜͷͨΊʹඳըͷύϥϝʔλΛνϡʔχϯά ͍ͯ͘͠ͷ͕ۤ࿑ͦ͠͏ɺͬͱָʹΓ͍ͨ ɾtruetypeϑΥϯτ͔͠αϙʔτ͞Ε͍ͯͳ͍
ϔουϨεϒϥβΛ༻͍ͨը૾ੜ ɾϔουϨεϒϥβΛىಈˠSS ɾϑϩϯτΤϯυͰը૾͍͡ΕΔɺCSSΑ͠ɺJS Α͠ ɾϒϥβ͕ରԠ͍ͯ͠ΔfontͳΒΑ͠ ɾࠓճslackֆจࣈͷͨΊͰ͕͢ɺOGPࣗಈੜͱ ͔૬ੑྑͦ͞͏
GoͰϔουϨεϒϥβΛૢΔ ɾChromedp https://github.com/chromedp/chromedp ɾchrome devtools protocolʢchromeΛૢ࡞͢ΔͨΊ ͷϓϩτίϧʣΛαϙʔτ͍ͯ͠Δͭ ɾSeleniumPhantomJSͱ͍ͬͨ֎෦ґଘͳ͠ ɾUI͖Ͱͳ͠ͰchromeΛૢΕΔ
None
chromedpΛͬͯը૾ੜ ɾbotͷϝϯγϣϯʹ͍͍ͭͯΔύϥϝʔλΛը૾ ੜͷͨΊͷೖྗͱͯ͠ѻ͏ ɾ@botname [color] [bgColor] [line1] [line2(optional)] MJOFɺ͕͋Δͱ͖ MJOF͚͕ͩ͋Δͱ͖
chromedpΛͬͯը૾ੜ ɾड͚औͬͨೖྗΛςϯϓϨʔτϑΝΠϧʹల։
None
chromedpΛͬͯը૾ੜ ɾड͚औͬͨೖྗΛςϯϓϨʔτϑΝΠϧʹల։ →canvasΛͬͯඳըʢCSS͚ͩͰΓ͔͕ͨͬͨɺεΫγϣͨͱ͖ ʹ༨ന্͕ࠞͬͯ͟ख͘Ͱ͖ͳ͔ͬͨɻɻcavasͩͱΩϨΠʹͰ͖ ͨʣ ɾ”ը૾ੜͷͨΊʹඳըͷύϥϝʔλΛνϡʔχϯά͍ͯ͘͠ͷ͕ۤ ࿑ͦ͠͏ɺͬͱָʹΓ͍ͨ” →݁ہςΩετඳըͷͨΊͷx࣠ɺy࣠ͷௐΛͬͨ
·ͱΊ ɾGoඪ४ͷimageύοέʔδͰྑ͔ͬͨʂʂʢfontʹ ͩ͜ΘΓͳ͔ͬͨͷͰɾɾʣ