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
oEmbed と Text::Hatena
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yasuhiro Onishi
March 18, 2012
Programming
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
oEmbed と Text::Hatena
Yasuhiro Onishi
March 18, 2012
More Decks by Yasuhiro Onishi
See All by Yasuhiro Onishi
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
18
11k
アニメから得た学びを発表会 in 関西 はてな スポンサーLT
onishi
1
91
大吉祥寺.pm 基調講演
onishi
4
9.1k
YAPC::Kyoto 2023 Keynote
onishi
3
11k
2016 Devsumi Kansai
onishi
3
1.6k
Hatena-Camp
onishi
2
4.6k
Hatena Blog for Engineer
onishi
2
3.2k
Hatena Blog Development Flow
onishi
34
38k
hatena-diary-blog-xss
onishi
5
1.2k
Other Decks in Programming
See All in Programming
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
210
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
260
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
300
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
460
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
180
1B+ /day規模のログを管理する技術
broadleaf
0
130
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
15
3.2k
どこまでゆるくて許されるのか
tk3fftk
0
460
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
2.1k
えっ!!コードを読まずに開発を!?
hananouchi
0
170
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
A designer walks into a library…
pauljervisheath
211
24k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Building AI with AI
inesmontani
PRO
1
1.1k
Building Adaptive Systems
keathley
44
3.1k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Transcript
P&NCFEͱ5FYU)BUFOB JEPOJTIJ גࣜձࣾͯͳେ߁༟
ࣗݾհ wJEPOJTIJେ߁༟ wגࣜձࣾͯͳ wνʔϑΤϯδχΞ wͯͳμΠΞϦʔϒϩάσΟϨΫλʔ w%FWFM,:51SPG w5FYU)BUFOB wਖ਼نදݱ͚ͩͰԿͱ͔͠Α͏ͱ͗͢͠Δ
ಈըຒΊࠐΈ
ຒΊࠐΈλά
ͯͳه๏ [http://www.youtube.com/watch?v=XDB9-‐TUrzc0:movie]
ͦͷ࣮ wಈըαʔϏεຖʹݸผରԠ wਖ਼نදݱΓͩ͘͞Μ wαΠτͷมߋʹै͢Δͷ͍ͨΜ wNPWJFJNBHFTPVOE
P&NCFE w63-ຒΊࠐΈ༷ wࣸਅಈըίϯςϯπΛαʔυύʔ ςΟʹຒΊࠐΉͨΊͷ"1* wIUUQPFNCFEDPN
P&NCFETQFD w63-TDIFNF w"1*FOEQPJOU http://www.flickr.com/photos/* http://www.flickr.com/services/oembed/
P&NCFESFRVFTU wVSM wNBYXJEUI PQUJPOBM wNBYIFJHIU PQUJPOBM wGPSNBU PQUJPOBM +40/PS9.-
P&NCFESFTQPOTF { "version": "1.0",
"type": "photo", "width": 240, "height": 160, "title": "ZB8T0193", "url": "http://farm4.static.flickr.com/3123/2341623661_7c99f48bbf_m.jpg", "author_name": "Bees", "author_url": "http://www.flickr.com/photos/bees/", "provider_name": "Flickr", "provider_url": "http://www.flickr.com/" }
8FCP&NCFE IUUQTNFUBDQBOPSHNPEVMF8FCP&NCFE use Web::oEmbed; my $consumer = Web::oEmbed-‐>new({
format => 'json' }); $consumer-‐>register_provider({ url => 'http://*.flickr.com/*', api => 'http://www.flickr.com/services/oembed/', }); my $response = $consumer-‐>embed("http:// www.flickr.com/..."); print $response-‐>render; #=> <img />
P&NCFEQSPWJEFS
P&NCFEEJTDPWFSZ <link rel="alternate" type="application/json+oembed" href="http://flickr.com/services/oembed?url=...&format=json" title="..."
/> <link rel="alternate" type="text/xml+oembed" href="http://flickr.com/services/oembed?url=...&format=xml" title="..." />
5FYU)BUFOB&NCFE [http://www.youtube.com/watch?v=XDB9-‐TUrzc0:embed]
w8FCP&NCFEʹϓϩόΠμΛϓϦηοτ wFOEQPJOU"VUP%JTDPWFS 5FYU)BUFOB&NCFE
͍
ϦΫΤετͨ͘͠ͳ͍ <script src="https://gist.github.com/$GIST_ID.js"></script> <iframe width="420" height="315" src="http://www.youtube.com/embed/$VIDEO_ID"></iframe>
wఆٛࡁͷมΛਖ਼نදݱͰߦ͏ w8FCP&NCFEʹϓϩόΠμΛϓϦηοτ wFOEQPJOU"VUP%JTDPWFS 5FYU)BUFOB&NCFE
JOTUBHSBNషΕΜͷʁ
P&NCFEඇରԠαΠτ wࣸਅڞ༗αΠτͰP&NCFEରԠαΠ τগͳ͍ wP&NCFEʹରԠ͍ͯ͠ͳͯ͘ΞϨ ʹରԠ͍ͯ͠Δʂʂ
None
wఆٛࡁͷมΛਖ਼نදݱͰߦ͏ w8FCP&NCFEʹϓϩόΠμΛϓϦηοτ wFOEQPJOU"VUP%JTDPWFS wPHJNBHFΛऔಘͯ͠ը૾λάΛग़ྗ 5FYU)BUFOB&NCFE
5FYU)BUFOB&NCFE IUUQTHJUIVCDPNPOJTIJ5FYU)BUFOB&NCFE my $embed = Text::Hatena::Embed-‐>new; print $embed-‐>render($url);
·ͱΊ wP&NCFEΜΓ wΜΓϞδϡʔϧެ։͠·ͨ͠ʔ w&NCFEؚΜͩ5FYU)BUFOBϑϧηοτ ࠷৽൛Λࠓय़ϦϦʔε༧ఆ w͍ͭͰʹͯͳϒϩάਖ਼ࣜԽ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠