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
ikyu_hack_camp_#1
Search
kentana20
August 10, 2014
Technology
0
870
ikyu_hack_camp_#1
開発合宿#1 @ 日光はじめのいっぽ
Node.js でスクレイピングバッチ+Webアプリを作った
kentana20
August 10, 2014
Tweet
Share
More Decks by kentana20
See All by kentana20
一休.comでの開発組織改善の取り組みとこれから /improve-ikyu-devlove-x
kensuketanaka
24
37k
株式会社一休 会社紹介資料 / introduce-ikyu
kensuketanaka
15
110k
一休での開発における改善の取組み /devops-at-ikyu
kensuketanaka
13
10k
一休.com における改善事例のご紹介 /ikyu-storage-improvement
kensuketanaka
6
11k
開発合宿@京都 /hack-camp-kyoto
kensuketanaka
0
3.8k
一休.comにおけるデプロイフローと自動化 /ikyu-deploy-flow
kensuketanaka
9
8.9k
ikyu-frontend
kensuketanaka
21
7.3k
sushi_route_2015
kensuketanaka
0
220
qiita meetup#12
kensuketanaka
4
71k
Other Decks in Technology
See All in Technology
ホリスティックテスティングの右側も大切にする 〜2つの[はか]る〜 / Holistic Testing: Right Side Matters
nihonbuson
PRO
0
620
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
130
データ基盤の管理者からGoogle Cloud全体の管理者になっていた話
zozotech
PRO
0
390
【CEDEC2025】『ウマ娘 プリティーダービー』における映像制作のさらなる高品質化へ!~ 豊富な素材出力と制作フローの改善を実現するツールについて~
cygames
PRO
0
240
製造業の課題解決に向けた機械学習の活用と、製造業特化LLM開発への挑戦
knt44kw
0
160
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
930
相互運用可能な学修歴クレデンシャルに向けた標準技術と国際動向
fujie
0
210
AIエージェントを現場で使う / 2025.08.07 著者陣に聞く!現場で活用するためのAIエージェント実践入門(Findyランチセッション)
smiyawaki0820
6
800
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
700
KubeCon + CloudNativeCon Japan 2025 Recap
donkomura
0
190
ビジネス文書に特化した基盤モデル開発 / SaaSxML_Session_2
sansan_randd
0
270
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
320
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
790
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Side Projects
sachag
455
43k
For a Future-Friendly Web
brad_frost
179
9.9k
Thoughts on Productivity
jonyablonski
69
4.8k
How GitHub (no longer) Works
holman
314
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Gamification - CAS2011
davidbonilla
81
5.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Adopting Sorbet at Scale
ufuk
77
9.5k
KATA
mclloyd
32
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Transcript
։ൃ߹॓#1 ͡Ίͷ͍ͬΆ 2014.08.08 @kentana20
Agenda ϨΪϡϨʔγϣϯʢ֬ೝʣ ࠾༻ٕͨ͠ज़ ࠓճͷ࡞ίϯηϓτ ࡞ͬͨͷ Batch Web Node.jsॴײ ·ͱΊ
ϨΪϡϨʔγϣϯ ͋·Γ৮͍ͬͯͳ͍ݴޠɾϑϨʔϜϫʔΫΛ৮Δ ࣾͷҰ෦αʔϏεΛఆͨ͠ҎԼͷॲཧϓϩ άϥϜΛ࡞Δ Batch:εΫϨΠϐϯάॲཧʴDBొ Web:Batchॲཧͯ͠औಘͨ͠σʔλͷදࣔ
࠾༻ٕͨ͠ज़ Node.js Batch/WebͱʹNode.js Node.jsnpmύοέʔδ͕๛ͰεΫϨΠϐϯάɺόον ॲཧʢcronʣɺDBΫϥΠΞϯτɺWebϑϨʔϜϫʔΫͱଟ ࠼ͳϥΠϒϥϦ܈͕ັྗ Redis ΠϯϝϞϦܕNoSQL
ࠓճͷ࡞ίϯηϓτ ʮඒঁʯΛࡐʹͨ͠ΞϓϦ 1ധ2Ͱ࣌ؒͷ࡞ۀ͕༧͞ΕͨͷͰɺπϥ ͘ͳ͍ࡐΛબ ਖ਼ৗʹऔಘɾදࣔ͞Εͨͱ͖ʹ༊͞ΕΔ ʮඒঁྐྵʯ͔Βඒঁը૾ͱϓϩϑΟʔϧΛεΫϨ ΠϐϯάͰऔಘ
࡞ͬͨͷ Batch `cheerio-httpcli` ͱ͍͏npmΛ࠾༻ʢΤϯδχΞblog࠷ ߴʣ σʔλͷอଘRedisΛ࠾༻ʢطʹOS Xʹೖ͔ͬͯͨΒʣ jQueryϥΠΫʹεΫϨΠϐϯάॲཧ͕ॻ͚Δ͙͢Εͷ CasperJSΛ͍͔͕ͨͬͨɺNode.jsͰಈ࡞ͤ͞Δͷʹ SpookyJS͕ඞཁͱ͍͏͜ͱΛࣦ೦͍ͯͯ͠λΠϜϩε
࡞ͬͨͷ Web `Express` ͱ͍͏WebϑϨʔϜϫʔΫΛ࠾༻ ΠϚυΩͷWebϑϨʔϜϫʔΫͰɺejsͱ͍͏Rails Ͱ͍͏ͱ͜ΖͷerbతͳwebςϯϓϨʔτ͕͑ ͯεοͱೖΕͨ ͕࣌ؒͳͯ͘ϓϨʔϯա͗ΔUIʹͳͬͨ
Γ͔ͨͬͨ͜ͱɾ৺Γ Q (ඇಉظΓ͜ͳͤͳ͔ͬͨʣ ඒঁͷϓϩϑΟʔϧΛͬͱऔಘ͔ͨͬͨ͠ʢliཁૉ͕ՄมͰid/ class྆ํͳͯ͘”൴ࢯͷ༗ແ”͕औΕͳ͔ͬͨ͜ͱ͕৺Γʣ WebϖʔδΛඒঁʹ;͞Θ͘͠ɺͬͱ՚͔ͳUIʹ͔ͨͬͨ͠ ʢBatchͷ࣮ʹֻ͚࣌ؒ͗ͯ͢ɺWebͷ࣮ʹ2࣌ؒ͘Β͍͔͠ͱ Εͳ͔ͬͨɻ࣌ؒॏཁʣ SpookyJSͰσʔλεΫϨΠϐϯά͢Δͷָͦ͠͏ͳͷͰɺͦͬͪ ʹτϥΠͯ͠Έ͍ͨ
Node.jsॴײ JavascriptϥΫʢ͚ͲͬͺΓه๏͖͡Όͳ͍ʣ JavascriptͰͯ݁͢Ͱ͖ΔͷͰɺڥߏஙؚΊͯಋೖίε τɾֶशίετ͍ npm͕๛ͳͷͰɺΠϚυΩͷWebΞϓϦͰ͍ͬͯΔ͜ͱ ͍͍ͩͨΧόʔͰ͖Δ γϯάϧεϨουɾඇಉظΛΓ͜ͳ͢༰ͳਫ਼ਆ͕ඞཁ झຯͷΞϓϦͳΒશવީิʹೖͬͯ͘Δ͕B2C͚ͷ͋Δఔ ͷτϥϑΟοΫ͕༧͞ΕΔαʔϏεӡ༻ະ
։ൃ߹॓ॴײ ूதͯ͠ɺීஈͷੜ׆͔ΒΕͯ։ൃʹ͖߹͏࣌ؒ ࠷ߴ ࠓճ͓ࢼ͠ʴ৽ݴޠͷτϥΠͩͬͨͷͰ1ധ2Ͱ ྑ͔͕ͬͨɺࣄͰ࣮ࡍʹ։ൃ߹॓͢ΔͳΒ2~3ധ ͘Β͍ͯ͠ɺΨοπϦ։ൃ͢Εɺ͔ͳΓॆ࣮ͨ͠ ՌΛग़ͤͦ͏ ఆظతʹ։࠵͍ͨ͠ʢ2ճͱ͔ʣ
Enjoy Coding!