Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
スクレイピングを(ちょっと)楽したい技術
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Aipa
November 02, 2018
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
スクレイピングを(ちょっと)楽したい技術
スクレイピングを(ちょっと)楽したい技術
Aipa
November 02, 2018
More Decks by Aipa
See All by Aipa
でーじいまさらReactを学ぶ
commander_aipa
0
13
「絶対に無理」を「ちょっと無理」にするAI活用術
commander_aipa
0
110
Amazon Connect で文字起こしする
commander_aipa
0
50
Devinと電話する
commander_aipa
0
53
Gemini CLI x gcloud CLI x Chrome DevTools MCP で、Google Cloudに乗っているアプリケーションのバグFixをいい感じにする
commander_aipa
0
130
ピンチヒッターです。なにか話します
commander_aipa
0
180
おれたちはいつDXできるのか
commander_aipa
1
130
ウンケーニオキタコワイハナシ
commander_aipa
0
190
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
240
Other Decks in Technology
See All in Technology
AI時代に必要な脅威モデリング― 変化の速度に負けない理解とリスク判断
masakane55
5
1.2k
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
160
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
220
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
250
AI時代のAPI開発を加速する品質ガードレール / API Quality Guardrails in the AI Era
yokawasa
0
170
12 個 Tool と、 4,096 Token
hlum
0
110
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
3.3k
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
340
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
110
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
530
IoTデバイスを繋げるプロトコルMatterをAndroidで使用する方法
harutiro
0
120
AIは爆速なのに、私が詰まっていた話 ― 音声入力と鳴くマスコットでボトルネックを削る
yama3133
0
570
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
540
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
My Coaching Mixtape
mlcsv
0
340
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
What's in a price? How to price your products and services
michaelherold
247
13k
Git: the NoSQL Database
bkeepers
PRO
433
67k
Documentation Writing (for coders)
carmenintech
77
5.6k
The Curious Case for Waylosing
cassininazir
1
560
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
Transcript
εΫϨΠϐϯάΛ ʢͪΐͬͱʣָ͍ٕͨ͠ज़ ࣾ-5ΞΠύʔୂ
͢͜ͱ
͢͜ͱ w Ϋϩʔϥʔ࡞ΔͷΊΜͲ͍͘͞ͷͰɺ͋ΔఔࣗಈԽ͍ͨ͠ w Ξϓϩʔν͕ϧʔϧϕʔεͱɺػցֶशͷख๏͕͋Δ w ࠓճϧʔϧϕʔεͷհ
ࣗݾհʢࠩʣ
ࣗݾհʢࠩʣ w ࢠڙ͕ੜ·Εͨᵋ ɾ㱼ɾ ᵇϔΠ̇ϔΠ̇ᵃ ɾ㱼ɾ ᵏ
൪
൪ w ʁʁʁʣʮ͊ɻ˓˓˓ɻήʔϜΛ࢝ΊΑ͏͔ʯ w ʮϧʔϧ؆୯ͩɺ͜͜ʹ̏ͭͷөը͕͋Δɻ̎࣌ؒҎʹ͜ͷ த͔Β̍ͭөըΛؑ͢Ε͍͍ɻ͠ࢹௌ͠ͳ͔ͬͨΓɺөը ͷ్தʹ৸མͪͯ͠͠·ͬͨΒήʔϜΦʔόʔͩʯ
͊͞ɻԿΛݟΔ͔બ
ਖ਼ղʢશ෦ݟͨͷϥϕϧʣ
Կ͕ݴ͍͍ͨͷ͔ w ҰൠͽʔΔཕөըΛબผ͢ΔྗΛΈʹ͚͍ͭͨ w ࣌ؒͱগֹͷ͕͍ۚͬͨͳ͍ήʔϜΦʔόʔ w ϚχΞཕͰ౿ΜͰΈ͍ͨ w ઌఔͷӈଆͷөըͷΑ͏ʹɺཕΛ౿ΜͰΈ͚ͨͲരൃͲ͜Ζ͔ ݁ߏ໘ന͍өըͩͬͨΓ͢Δ
w ͜ΕΛޮΑ͘ݟ͚͍͖͍ͭͯͨ
Կ͕ݴ͍͍ͨͷ͔ w ҰൠͽʔΔཕөըΛબผ͢ΔྗΛΈʹ͚͍ͭͨ w ࣌ؒͱগֹͷ͕͍ۚͬͨͳ͍ήʔϜΦʔόʔ w ϚχΞཕͰ౿ΜͰΈ͍ͨ w ઌఔͷӈଆͷөըͷΑ͏ʹɺཕΛ౿ΜͰΈ͚ͨͲരൃͲ͜Ζ͔ ݁ߏ໘ന͍өըͩͬͨΓ͢Δ
w ͜ΕΛޮΑ͘ݟ͚͍͖͍ͭͯͨ8FCαʔϏε࡞த
Կ͕ݴ͍͍ͨͷ͔ w ҰൠͽʔΔཕөըΛબผ͢ΔྗΛΈʹ͚͍ͭͨ w ࣌ؒͱগֹͷ͕͍ۚͬͨͳ͍ήʔϜΦʔόʔ w ϚχΞཕͰ౿ΜͰΈ͍ͨ w ઌఔͷӈଆͷөըͷΑ͏ʹɺཕΛ౿ΜͰΈ͚ͨͲരൃͲ͜Ζ͔ ݁ߏ໘ന͍өըͩͬͨΓ͢Δ
w ͜ΕΛޮΑ͘ݟ͚͍͖͍ͭͯͨ8FCαʔϏε࡞த
൪ऴΘΓ w #ڃөըΛϨϏϡʔ͍ͯ͠ΔϒϩάهࣄΛΫϩʔϧ w ϨϏϡʔهࣄʹϥϕϧʢ໘ന͔ͬͨPSͭ·Βͳ͔ͬͨʣ w Ϟσϧߏங w 7VFKTͰαΠτΛߏங
՝ w ΫϩʔϥʔΛఆظ࣮ߦ w εΫϨΠϐϯάͷࣗಈԽ w өըλΠτϧͷਖ਼نԽ w ϨϏϡʔੳͷਫ਼ w
αΠτσβΠϯ
՝ w ΫϩʔϥʔΛఆظ࣮ߦ w εΫϨΠϐϯάͷࣗಈԽ w өըλΠτϧͷਖ਼نԽ w ϨϏϡʔੳͷਫ਼ w
αΠτσβΠϯ
εΫϨΠϐϯάͷࣗಈԽ
εΫϨΠϐϯάͱʢΠϝʔδʣ HTML HTML ᶃ ᶄ ᶅ
ΊΜͲ͍͘͜͞ͱ w αΠτຖʹύʔε͢Δߏ͕ҧ͏ͨΊɺରԠ͢ΔϓϩάϥϜ ͷ༻ҙ w هࣄ63-ͷநग़ w هࣄͷநग़
ΊΜͲ͍͘͜͞ͱ w αΠτຖʹύʔε͢Δߏ͕ҧ͏ͨΊɺରԠ͢ΔϓϩάϥϜ ͷ༻ҙ w هࣄ63-ͷநग़ w هࣄͷநग़
Ξϓϩʔν w ϖʔδ͔Βίϯςϯπ͚ͩΛൈ͖ग़ͨ͢ΊͷγϯϓϧͰ؆୯ͳํ ๏ɻ w <OFX>هࣄͷεΫϨΠϐϯάΛػցֶशͰࣗಈԽ
ϖʔδ͔Βίϯςϯπ͚ͩΛൈ͖ग़ͨ͢Ίͷγϯ ϓϧͰ؆୯ͳํ๏ɻ w ͬ͘͟Γͱ͢Δͱ w େྔͷ8FCϖʔδͷεΫϨΠϐϯάॲཧΛλΠϓ͢Δͷେม w ίϯςϯπ͚ͩΛൈ͖ग़ͤͳ͍͔ w ࣗ࡞؆қ൛ίϯςϯπநग़ϩδοΫΛ࡞ͬͨΑʢ+BWBʣ
ϩδοΫઆ໌ αΠτ͔Βൈਮ w )UNMλάΛͱ͠ɺλάߏͷҐஔΛਂ͞ͱͯ͠ɺ Eͱ͢Δ w λάͷԼʹؚ·ΕΔςΩετྔΛMͱ͢Δ w λάͷԼͷࢠλάɻDͱ͢Δ S
= l 4 3 d 2c
ίʔυ͕͋Δ
Ͱ+BWBͳΜͰ͢Α
ͱ͍͏Θ͚Ͱ
࡞ΔϚϯɾɾɾɾɾɾɾ
Ͱ͖ͨϚΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞϯ
6TBHF 1 from trimmer_py.trimmer_py import search_max_score_tag 2 from urllib import
request 3 4 if __name__ == '__main__': 5 url = 'http://teenssexandwarmode.hatenablog.com/entry/2018/10/10/042129' 6 with request.urlopen(url) as f: 7 html = f.read() 8 # return bs4 object. 9 t = search_max_score_tag(html) 10 print(t.text)
ݕূ݁Ռ w దʹर͖ͬͯͨϒϩάهࣄ̑αΠτ͙Β͍͏·͍ͬͨ͘ w ࣗ࡞ΫϩʔϥʔʹΈࠐΜͩΒλΠτϧ࿙Εͱ͔͚͋ͬͨͲɺ΄ ΅΄΅͏·͍ͬͨ͘ʢ̐αΠτɾɾɾɻαϯϓϧ͕গͳ͍ʣ w ·͊Αͦ͞͏
ݕূ݁Ռ
ࡶײ
ࡶײ w هࣄͷऔಘϧʔϧϕʔεͰࣗಈԽͰ͖ͨ w هࣄҰཡͷऔಘࣗಈԽ͍ͨ͠ͳɻߟ͑Δ w #ڃϥΠϑΛόϥ৭ʹ͢ΔͨΊʹࣗવݴޠॲཧͷษڧΛؤுΔ