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
Puppeteer と GAS を利用した Web 監視
Search
howdy39
April 03, 2018
Programming
1
1.6k
Puppeteer と GAS を利用した Web 監視
ソース公開しています
https://github.com/howdy39/web-update-notification
howdy39
April 03, 2018
Tweet
Share
More Decks by howdy39
See All by howdy39
GAS x スプレッドシート x Looker Studio を組み合わせたデバイス管理 / DeviceMangent with GAS, SpreadSheet, Looker Studio
howdy39
0
630
ChatGPTを使った 社内アシスタントBOTを作りました / ChatGPT Assistant Bot
howdy39
0
440
WebPagetestで始めるパフォーマンス計測 / Performance measurement starting with WebPagetest
howdy39
4
510
Storybookを用いたVue.js共通コンポーネント開発との戦い / stores-fights-storybook
howdy39
5
8.2k
gas-webpagetestで パフォーマンス計測を始めよう / get-started-measuring-performance-with-gas-webpagetest
howdy39
0
2.1k
Promise
howdy39
1
260
カラーユニバーサルデザイン / color universal design
howdy39
0
640
Geolocation API
howdy39
0
86
Chrome DevTools の Console を使いこなす/Using the Chrome dev tool
howdy39
0
150
Other Decks in Programming
See All in Programming
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
120
Rails と人魚の話/rails-and-mermaid
sanfrecce_osaka
0
100
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
250
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
3
290
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
Folding Cheat Sheet #3
philipschwarz
PRO
0
120
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
350
Folding Cheat Sheet #1
philipschwarz
PRO
0
210
Tailwind CSSを本気でカスタマイズする方法
fsubal
5
1.2k
CircleCIを活用して AWSへの継続的デリバリーを 実践する
coconala_engineer
1
230
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
180
What We Can Learn From OSS
inouehi
0
400
Featured
See All Featured
Building Adaptive Systems
keathley
30
1.8k
Agile that works and the tools we love
rasmusluckow
324
20k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Build The Right Thing And Hit Your Dates
maggiecrowley
23
2k
The Brand Is Dead. Long Live the Brand.
mthomps
48
28k
Designing for humans not robots
tammielis
247
25k
The Cost Of JavaScript in 2023
addyosmani
14
3.8k
Building Effective Engineering Teams - LeadDev
addyosmani
27
1.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
GraphQLとの向き合い方2022年版
quramy
31
12k
Transcript
Puppeteer と GAS を利用した Web 監視 2018/04/03 トップゲート社 第2回 フロントエンド勉強会
1
本日の内容 2 1. Puppeteer とは 2. Puppeteer と GASを利用した Web
監 視
1. Puppeteer とは 3
Puppeteer Chrome を Node.js から操作するラ イブラリ • DevTools Protocol で操作している
• ヘッドレスモードで起動することでGUI なしでも使える 4
Puppeteer 5
比較 6
特徴その1 画面キャプチャを撮る • 画面サイズを変えることも可能 7
特徴その2 画面を操作する • DOMの内容を取得することも可能 8
特徴その3 SPA でもOK • Chrome を操作しているから、JS が 動く 9
その他 • テストも考慮されている • 任意のDOMだけ切り出してキャプチャ も可能 • HTTPリクエストのインターセプト • 描画にかかった時間などの計測
• etc 10
2. Puppeteer と GASを利用した Web 監視 11
経緯 12 技術情報のキャッチアップ 公式情報が一番早い • ブログとかは RSS/Atom を用意してく れてる だけど・・・
用意してくれていない サイトが意外とある・・・ → タブを開いといて、毎日リロードしてチェックしてた 13
なのでWeb監視する仕組みを 作った 14
15 1. cron で定期的に Node を実行する 2. puppeteer を用いて Web
スクレイピング 3. GAS で建てた Web サーバーに Post で スクレイピング結果を送信 4. スクレイピング結果を受け取り、履歴をス プレッドシートに登録 5. 履歴に変更があったら Slack で通知
デモ 16
17 ここをpuppeteerで取得 GCE 上の Node から puppeteer を実行 GAS でスプレッドシートの
履歴を書込 & Slack で通知