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
勤怠入力のためにブラウザを開きたくない!
Search
Takegata
January 15, 2021
Programming
250
0
Share
勤怠入力のためにブラウザを開きたくない!
下記イベントでの発表内容です。
[オンライン開催] お正月にやったこと勉強したことLT会
https://ncdc-dev.connpass.com/event/201001/
Takegata
January 15, 2021
More Decks by Takegata
See All by Takegata
PRを小さくする勉強会
ratmie
0
27
安全なログ記録を始めよう
ratmie
0
69
プロジェクト炎上を予防するためにメンバーひとりひとりができること
ratmie
0
2.3k
プロダクト開発のトラブルを予防するために どうして「大丈夫です」と報告されるのに スケジュールは遅れるのか
ratmie
0
19
銀の弾丸?AWS App Runnerとは
ratmie
0
34
AWS re/Invent 2023 所感とサービス
ratmie
0
11
Other Decks in Programming
See All in Programming
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
5.2k
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
220
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
240
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.3k
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
420
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
470
inferと仲良くなる10分間
ryokatsuse
1
360
AIとRubyの静的型付け
ukin0k0
0
520
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
690
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.3k
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
310
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
190
Featured
See All Featured
Claude Code のすすめ
schroneko
67
220k
What's in a price? How to price your products and services
michaelherold
247
13k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
680
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
190
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
380
RailsConf 2023
tenderlove
30
1.5k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
200
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
Statistics for Hackers
jakevdp
799
230k
Transcript
勤怠⼊⼒のためにブラウザを開きたく ない! 1
誰? https://github.com/ratmie NCDC 2 年⽬エンジニア この⼀年間業務で書いたのはTypeScript/JavaScript アクションゲームが下⼿なのに格ゲーを始めた トレーニングモードばかりしている 2
勤怠⼊⼒がめんどくさい 3
ブラウザを開く 当該ページを開く ボタンを押す → これを出勤時、昼休憩開始時、昼休憩終了時、退勤時に⾏う 4
忘れる 5
他のやり⽅はないか? 6
CLI で操作できるようにしたら他サービスとの 連携できて便利なのでは? 7
Python か Node でぱぱっとやる 8
いや、待てよ 9
どうせだし Golang 使ってみるか 10
動機 Python/Node の実⾏環境がいらないので社内配布が便利そう 速くなる? 趣味なんだから普段の業務で使ってないことやりたい 11
課題 弊社が使⽤している勤怠サービス(CloudLog) はWeb API 公開していな い 12
WebDriver でヘッドレスブラウザ操作する 13
WebDriver って? Web ブラウザ操作の標準 ブラウザに対して中⽴ ⾔語に対して中⽴ 14
今回⽤いたのは Chrome Driver: Google Chrome のためのWeb Driver agouti: Go でWeb
Driver を扱うためのライブラリ 15
引っかかったこと インストールされているChrome と同じバージョンのChrome Driver を ⼊れないとエラーになる → 実際にブラウザを駆動しているため 16
まとめ 楽するために⾯倒なことをするのは楽しい API 公開されていなくてもWeb サービスであればブラウザ操作でな んとかなる Go のよさみ、つらみ(また別途) 17