hatena-mode をいれて日記書きやすくなったので、さっそく日記を更新してみる。俗に言う「ハンマーを持つ人には、すべてが釘に見える (If all you have is a hammer, everything looks like a nail.) 」って奴ですね。いまの自分には Emacs のバッファが、全てハテナ日記にみえてます(うそです) 今まで備忘録は、Emacs Muse (←Emacs 上で動く Wiki)でやってたんですが、公開を前提としてないと殴り書きメモになってしまい、自分でもわかりづらい状況だったので、この際、はてな日記を清書用にしようかと。てわけで日記タイトルも変更しました。たまーに ruby をいじるとすっかり忘れてて、思い出すのに3日とかかかっちゃって、ときどき使いたくなるけどあんまり使わない技術ネタを個人的な備忘録としてまとめていきます。 さて今回は、
最近,RubyのWWW::Mechanizeで遊んでいます. WWW::Mechanizeは内部的にHpricot(HTML文書スクレイパ)を使っており,WWW::Mechanize経由でHpricotにsearchメソッドなどを送れるわけですが,このときにXPath式を渡すことで,目的の部分のHTML要素を得ることができます.これがまた気分爽快.たとえばこんな感じに使えます:: #!/usr/bin/ruby # Yahoo! Newsのヘッドラインを抜き出す require 'rubygems' require 'mechanize' agent = WWW::Mechanize.new page = agent.get('http://headlines.yahoo.co.jp/hl') headline = page/'//h1[@class="yjXL"]/a' # '/'はse
mixi から友人の日記の本文を取得して出力します。 準備。 $KCODE = "e" require "kconv" require "rubygems" require "mechanize" include WWW agent = Mechanize.new とりあえず mixi をゲット。 #Login page = agent.get("http://www.mixi.jp/") form = page.forms.first form["email"] = "mail@address" form["password"] = "password" form.submit #日記一覧ページ page = agent.get("new_friend_diary.pl") Firebug で XPath を取得します。らくちんだ。 Firebug で簡単に XPath 作れると言っても
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く