Hatena::ブログ(Diary)

はけの徒然日記 このページをアンテナに追加 RSSフィード

2005 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 04 | 05 | 08 | 09 | 10 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 |
2011 | 01 | 02 | 03 | 04 | 11 | 12 |
2012 | 02 | 03 | 05 |
2014 | 02 | 03 | 04 | 05 | 12 |
2015 | 05 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 04 | 05 | 08 | 09 | 11 | 12 |
2017 | 01 | 02 | 03 | 04 | 05 |

2007-03-19(Mon)

Wikipediaを読む

Ruby勉強

キーワードの内容編集画面から記述内容を取得。

通信用語の基礎知識を変換していて思いついた内容。キーワードを上手く選んで取得したデータEPWING化すれば結構便利な辞書になりそうかも。

require 'hpricot'
require 'open-uri'
require 'kconv'
$KCODE = "s"

URL1 = "http://ja.wikipedia.org/w/index.php?title="
URL2 = "&action=edit"


def get_text(key)
  if key == key.toutf8
    keyword = key
  else
    keyword = ""
    key.toutf8.unpack("H*").to_s.upcase.gsub(/(..)/) do |hex|
      keyword += "%#{hex}"
    end
  end
  puts "Keyword : " +  key.tosjis
# p keyword
  
  doc = Hpricot( open("#{URL1}#{keyword}#{URL2}").read )
  txt = doc.at(:textarea)
  str  = txt.inner_text
  if /^#REDIRECT.*\[\[(.*)\]\]/ =~ str
    r_str = $1
    return "redirect", r_str
  else
    if str != "\n"
      return "ok", str
    else
      return "no", nil
    end
  end
end


#KEYWORD = "zaurus"    # redirect to ザウルス
#KEYWORD = "ザウ"      # no keyword
KEYWORD = "ザウルス"   # puts textdata to test.txt


status, txt = get_text(KEYWORD)
if status == "ok"
    File.open("test.txt", "w") do |f|
      f.puts txt.tosjis
    end
end
puts "Status : " + status
puts " to " + txt.tosjis if status == "redirect"

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/hake/20070319/p1