ϔουϨεChromeͰΫϩʔϥΛ࡞ͬͨ”ޙͷ”Roppongi.js #1Yuji Isobe
View Slide
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 > Traffichttps://twitter.com/yujiosaka/status/967316514322890752
GitHub Trending Repositories͜ͷลΛ2-3ؒ͏Ζ͍ͭͯͨhttps://github.com/trending
Hit 2000 Stars in 7 dayshttps://github.com/yujiosaka/headless-chrome-crawler> 2000
ເ͕ͬͨ
ظ͍ͯͨ͠ϝϦοτ✓ ࣭ͷ্✓ ։ൃྗͷ্✓ ϒϥϯυ্✓ ࣄʹͭͳ͕Δ ୭͔ࣄ͘ΕΖ͍ͩ͘͞ҙ֎ͱࣗݾΞϐʔϧஏ͔͍ͣ͠·ͩλΠϙमਖ਼͔͠ૹΒΕͯͳ͍IssueΒϝʔϧΒରԠ͍͠
ࣄதͣͬͱχϠχϠͰ͖Δ
ຊଟ͘ͷਓͷʹཹ·ͬͨϥΠϒϥϦͱͦ͏ͳΒͳ͔ͬͨϥΠϒϥϦͷҧ͍Λཧ※ͨͬͨαϯϓϧ̍ͷ͜ͱͳͷͰʹฉ͍͍ͯͩ͘͞
λʔήοτͷ͞✓ ӳޠͰൃ৴͢Δॏཁੑ✓ READMEΛӳޠͰॻ͍ͨΒ͓ऴ͍Ͱͳ͍✓ ʰͯϒϗοτΤϯτϦʔʱΑΓ ʰHacker News Top Linksʱͷํ͕10ഒྲྀೖ͕͋ͬͨ
ར༻ͷϋʔυϧ✓ ҰݟͯԿ͕͍ͨ͠ͷ͔ϋοΩϦ͔Δ✓ Headless Chrome + Crawler = Headless ChromeCrawler✓ READMEͰϝϦοτΛҰ൪࠷ॳʹΞϐʔϧ͓ͯ͘͠✓ ͦΕͰ͔Βͳ͍ਓ͚ʹɺFAQΛ༻ҙ͢Δ✓ ͍͍ͩͨͷਓ࠷ॳͷߦ͔͠ಡ·ͳ͍✓ ը૾ϩΰͰʮ؆୯͞ʯΞϐʔϧͰ͖Δ
ίʔυϦʔσΟϯάͷϋʔυϧ✓ examples Λॆ࣮ͤ͞Δ✓ Ұ൪ಡ·Ε͍ͯͨίϯςϯπ examples ͩͬͨ✓ πʔϧϑϧ׆༻͢Δ✓ ESLint✓ commitlint✓ EditorConfig✓ TypeScript / JSDoc support
৴པ✓ όοδΛϑϧ׆༻✓ ࠷৽ͷϏϧυঢ়گ͕ҰͰ͔ΔΑ͏ʹ͢Δ✓ άϦʔϯ͕ฒΜͰΔͱͳΜ͔҆৺͢Δ✓ Greenkeeper࠷ڧઆ✓ ࠷ޙͷίϛοτ͕લͷϓϩδΣΫτͱ͔͍ͨ͘ͳ͍✓ ͠Β͘αϘͬͯͯɺৗʹίϛοτͰ͖Δ
Happy Niya-niya Hacking!