web通信
Ryosuke Igarashi
2014.08.06
agenda
- HTTP
- Ajax
- Web Socket
- Web RTC (HTML5)
http
http
- HTTP 1.1シンプルなHTTPの使い方
- リクエスト・レスポンス
- GET/POST/PUT/DELETE/...
- クライアントからサーバに対する要求
- 毎回、ページロードが発生
feature
-
24個のサーボモータや電子機器が内蔵
- 机で足ぶらりアイドルモード搭載
- BlueTooth搭載
- SNSやメール通知機能搭載
- AndroidやiOSで操作可能
- GooglePlayでモーションや音声をDL可能
First MOTION TEST
coming soon
Extra
scraping入門
What's the 'scraping'
スクレイピングとは、webサイトの要素を解析して必要な情報を取り出したり収集すること。
使うもの
- Ruby
- nokogiri(gem)
demo
notice
- nokogiriはXPATHもCSS Selectorも使えるが、CSS Selectorを使う方がオススメ
- CSS SelectorはもともとCSSで定義され、jQueryなどにも使われるため利用機会が多い
- XPATHより見た目が簡潔で直感的に使える(好み?)
-
nokogiriの.css()や.xpath()でtbodyを含めると検索できない(バグ?)
- doc.xpath('//table/tbody')
- doc.css('table > tbody')
BASIC css selectors
- .(クラス)
- #(ID)
- A B(BはAの子孫要素)
- A > B(BはAの子要素)
- A + B(BはAに隣接している要素)
- A ~ B(BはAの後ろにある要素)
- A:nth-child(n)(Aのn番目の要素)
- A[name](Aのnameという属性を持つ要素)
- A[name=“value"](Aのnameという属性の値がvalueの要素)
- A[name^=“value"](Aのnameという属性の値がvalueで始まる要素)
- A[name$=“value"](Aのnameという属性の値がvalueで終わる要素)
-
A[name*=“value"](Aのnameという属性の値がvalueを含む要素)
other gems
- mechanize
- nokorigiはDOM解析・構築に特化しているに対して、mechanizeはnokogiriをラップしてより使いやすく、より高機能にしたもの
- CSS selectorとかXPATHを使わなくても検索が書ける
- ページのFormにパラメータを入れて画面遷移とかもできる
- ただし覚えることが増えるので、個人的にはnokogiriでCSS Selectorを書いてた方がいいかな。
- http://docs.seattlerb.org/mechanize/GUIDE_rdoc.html
end
KokubunjiStudy01
By Ryosuke Igarashi
KokubunjiStudy01
- 691