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
ヘッドレスChromeでクローラを作った後の話
Search
yujiosaka
March 20, 2018
Technology
3
640
ヘッドレスChromeでクローラを作った後の話
yujiosaka
March 20, 2018
Tweet
Share
More Decks by yujiosaka
See All by yujiosaka
I was understanding WASM all wrong! 🤯
yujiosaka
2
230
Machine Learning with JavaScript
yujiosaka
0
160
JavaScriptでも機械学習がやりたかった話
yujiosaka
2
420
俺が最初にヘッドレスChromeでクローラ作った 事になんねーかな
yujiosaka
4
1.2k
『XXX』のための管理画面
yujiosaka
1
1.3k
Enjoy Deep Learning by JavaScript
yujiosaka
1
320
ひたすら楽してディープラーニング
yujiosaka
20
13k
technology x business
yujiosaka
3
540
第二回もんご祭 パネルディスカッション
yujiosaka
0
870
Other Decks in Technology
See All in Technology
Datadog APM におけるトレース収集の流れ及び Retention Filters のはなし / datadog-apm-trace-retention-filters
k6s4i53rx
0
330
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.1k
アジャイル開発とスクラム
araihara
0
170
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.4k
Building Products in the LLM Era
ymatsuwitter
10
5.3k
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
530
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
100
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
1
670
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
プロセス改善による品質向上事例
tomasagi
2
2.5k
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
830
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Site-Speed That Sticks
csswizardry
4
380
The World Runs on Bad Software
bkeepers
PRO
67
11k
Scaling GitHub
holman
459
140k
What's in a price? How to price your products and services
michaelherold
244
12k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
The Cult of Friendly URLs
andyhume
78
6.2k
A Philosophy of Restraint
colly
203
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Transcript
ϔουϨεChromeͰ ΫϩʔϥΛ࡞ͬͨ”ޙͷ” Roppongi.js #1 Yuji Isobe
Yuji Isobe @yujiosaka ϓϩδΣΫτϚωʔδϟʔ at https://speakerdeck.com/yujiosaka/hitasurale-sitedeipuraningu
ΫϩʔϥΛ࡞ͬͨ࣌ͷ https://speakerdeck.com/yujiosaka/an-gazui-chu-nihetudoresuchromedekurorazuo-tuta-shi-ninannekana
ϔουϨεChromeͱ ✓ Chrome͕ϔουϨεϞʔυͰىಈͰ͖Δ ✓ ChromeͷىಈΦϓγϣϯʹʮ--headessʯΛՃ͑Δ͚ͩ ✓ දతͳϔουϨεϒϥβͱ͍͑PhantomJS ✓ ߴͰ҆ఆͯ͠ಈ࡞͢Δ ✓
ඪ४ͷରԠ͕ૣ͍ʢES2017Async-Await͕͑Δʣ ✓ ओͳ༻్ςετࣗಈԽͱΫϩʔϥ
Headless Chrome Crawler ✓ ϔουϨεChromeͰΫϩʔϥ ✓ ࢄڥͰಈ࡞͢Δ ✓ ਂ͞༏ઌ୳ࡧʢDFSʣͱ ෯༏ઌ୳ࡧʢBFSʣΛαϙʔτ
✓ robots.txt, sitemap.xmlʹै͏ ✓ Puppeteerʹґଘ ✓ Node.jsʢJavaScriptʣ https://github.com/yujiosaka/headless-chrome-crawler
ࠓ࡞ͬͨ”ޙͷ”
GitHub > Insights > Traffic https://twitter.com/yujiosaka/status/967316514322890752
GitHub Trending Repositories ͜ͷลΛ2-3ؒ ͏Ζ͍ͭͯͨ https://github.com/trending
Hit 2000 Stars in 7 days https://github.com/yujiosaka/headless-chrome-crawler > 2000
ເ͕ͬͨ
ظ͍ͯͨ͠ϝϦοτ ✓ ࣭ͷ্ ✓ ։ൃྗͷ্ ✓ ϒϥϯυ্ ✓ ࣄʹͭͳ͕Δ ୭͔ࣄ͘ΕΖ͍ͩ͘͞
ҙ֎ͱࣗݾΞϐʔϧஏ͔͍ͣ͠ ·ͩλΠϙमਖ਼͔͠ૹΒΕͯͳ͍ IssueΒϝʔϧΒରԠ͍͠
ࣄதͣͬͱχϠχϠͰ͖Δ
ຊ ଟ͘ͷਓͷʹཹ·ͬͨϥΠϒϥϦͱ ͦ͏ͳΒͳ͔ͬͨϥΠϒϥϦͷҧ͍Λཧ ※ͨͬͨαϯϓϧ̍ͷ͜ͱͳͷͰʹฉ͍͍ͯͩ͘͞
λʔήοτͷ͞ ✓ ӳޠͰൃ৴͢Δॏཁੑ ✓ READMEΛӳޠͰॻ͍ͨΒ͓ऴ͍Ͱͳ͍ ✓ ʰͯϒϗοτΤϯτϦʔʱΑΓ ʰHacker News Top
Linksʱͷํ͕10ഒྲྀೖ͕͋ͬͨ
ར༻ͷϋʔυϧ ✓ ҰݟͯԿ͕͍ͨ͠ͷ͔ϋοΩϦ͔Δ ✓ Headless Chrome + Crawler = Headless
Chrome Crawler ✓ READMEͰϝϦοτΛҰ൪࠷ॳʹΞϐʔϧ͓ͯ͘͠ ✓ ͦΕͰ͔Βͳ͍ਓ͚ʹɺFAQΛ༻ҙ͢Δ ✓ ͍͍ͩͨͷਓ࠷ॳͷߦ͔͠ಡ·ͳ͍ ✓ ը૾ϩΰͰʮ؆୯͞ʯΞϐʔϧͰ͖Δ
ίʔυϦʔσΟϯάͷϋʔυϧ ✓ examples Λॆ࣮ͤ͞Δ ✓ Ұ൪ಡ·Ε͍ͯͨίϯςϯπ examples ͩͬͨ ✓ πʔϧϑϧ׆༻͢Δ
✓ ESLint ✓ commitlint ✓ EditorConfig ✓ TypeScript / JSDoc support
৴པ ✓ όοδΛϑϧ׆༻ ✓ ࠷৽ͷϏϧυঢ়گ͕ҰͰ͔ΔΑ͏ʹ͢Δ ✓ άϦʔϯ͕ฒΜͰΔͱͳΜ͔҆৺͢Δ ✓ Greenkeeper࠷ڧઆ ✓
࠷ޙͷίϛοτ͕લͷϓϩδΣΫτͱ͔͍ͨ͘ͳ͍ ✓ ͠Β͘αϘͬͯͯɺৗʹίϛοτͰ͖Δ
Happy Niya-niya Hacking!