もういくつ寝るとお正月?日本の皆さん、
お正月の用意はできましたか?

毎日タコ焼きの鉄板を持ち上げているので、
更にパワフルに変身したタコ焼き仮面です。
残念な事に、タコ焼き仮面はrubyconf.には参加は出来ませんでしたが、
この場をお借りして、皆さんに感謝させて頂きます。
来年のruby kaigi in Tsukubaで皆さんにお会いできる事を楽しみにしています。

では、良いお年をお過ごしください。

nokogiri version 1.4.1 が、遂にリリースされました

* <http://nokogiri.org/>
* <http://github.com/tenderlove/nokogiri/wikis>
* <http://github.com/tenderlove/nokogiri/tree/master>
* <http://groups.google.com/group/nokogiri-talk>
* <http://github.com/tenderlove/nokogiri/issues>

Nokogiri はHTMLとXMLとSAXとXSLTとReaderのパーサーです。とりわけ重要な特徴は、
ドキュメントをXPathやCSS3セレクター経由で探索する機能を持つことです。

XMLは暴力に似ている - XMLが君の問題を解決しないとしたら、君はXMLを十分に
使いこなしていない事になる。

Changes:

### 1.4.1 2009年12月10日

* 新しい機能
  * Nokogiri::LIBXML_ICONV_ENABLED を追加
  * Node#attr は Node#[] のエイリアス定義に変更
  * XML::Node#next_element を追加
  * 直接の子ノードを検索するための Node#> を追加
  * XML::NodeSet#reverse を追加
  * 以下のfragment supportを追加
   Node#add_child
   Node#add_next_sibling
    Node#add_previous_sibling
   Node#replace
  * XML::Node#previous_element を追加
  * nokogiriがRubinius でサポートされるようになった
  * CSS selector の :has() が使用可能になった
  * XML::NodeSet#filter() を追加
  * XML::Node.next= は add_next_sibling の alias へ変更
  * XML::Node.previous= は add_previous_sibling の alias へ変更

* バグの修正
  * XMLのフラグメントに名前空間が存在する場合のみ、DocumentFragmentを作る際に、
    例外が投げられなくなった
  * DocumentFragment内で子ノードが存在する場合、
    Node#matches?が機能するようになった GH #158
  * Documentは add_namespace()を限定すべきではないので削除GH #169
  * XPath クエリは名前空間の宣言を変換するがsegvではない。
  * Node#replace は他のドキュメントのノードが使えるようになった
  * XML::Document#collect_namespaces を追加
  * SOAP4R のアダプター内のバグ修正
  * XML::Node#next_element 内のバグ修正
  * WindowsでのJRuby の LOAD_PATH を修正 GH #160
  * XSLT#apply_toは "output method"の値を使用する(richardlehaneに感謝)
  * 新しい文字列の先頭にくるテキストノードを含んだフレグメントが 正確に
    解析出来るようになった GH #178

## FEATURES:

* XPath による探索
* CSS3 のセレクターによる探索
* XML/HTMLのビルダー

XML/HTMLの高速な解析と探索検索、ならびにCSS3セレクタとXPathをサポートしています。

スピードテスト:

  * http://gist.github.com/24605

## SUPPORT:

日本語でNokogiriの
{メーリングリスト}[http://groups.google.com/group/nokogiri-list]

  * http://groups.google.com/group/nokogiri-list

{バグ報告}[http://github.com/tenderlove/nokogiri/issues]

  * http://github.com/tenderlove/nokogiri/issues

IRCのチャンネルはfreenodeの #nokogiri です。

## SYNOPSIS:

  require 'nokogiri'
  require 'open-uri'

  doc = Nokogiri::HTML(open('http://www.google.com/search?q=tenderlove'))

  ####
  # Search for nodes by css
  doc.css('h3.r a.l').each do |link|
    puts link.content
  end

  ####
  # Search for nodes by xpath
  doc.xpath('//h3/a[@class="l"]').each do |link|
    puts link.content
  end

  ####
  # Or mix and match.
  doc.search('h3.r a.l', '//h3/a[@class="l"]').each do |link|
    puts link.content
  end


## REQUIREMENTS:

* ruby 1.8 or 1.9
* libxml2
* libxml2-dev
* libxslt
* libxslt-dev

## INSTALL:

* sudo gem install nokogiri

-- 
Aaron Patterson
http://tenderlovemaking.com/