#!/usr/bin/env ruby # kinokuniya.rb ver.0.3 2002.4.7-2002.4.27, 2003.1.20 require 'net/http' require 'cgi' #require 'simpleuri' #require 'webagent' class CacheBib_kinokuniya < CacheBib attr_accessor :isbn attr_accessor :flag_review #, :affiliate_code attr_accessor :url_site attr_accessor :title, :author, :publisher, :pubdate, :price, :desc attr_accessor :image, :limage, :translator attr_accessor :e_title, :e_author, :title_kana,:sizetype, :genre, :series attr_accessor :size, :sizetype attr_accessor :reviews, :reviewlist attr_accessor :insystemKcode, :outputKcode, :messageKcode def initialize () super @reviews = Array.new() @flag_review = true @url_site = 'http://bookweb.kinokuniya.co.jp/' @insystemKcode = 3 #sjis #1-jis,2-euc,3-sjis @outputKcode = 2 #euc @messagetKcode = 3 #sjis end #===== ===== parts ===== ===== def word_delivery () delivery = '' flag = false # title-check -> no-info / get-info check if !@title.nil? flag = true if @delivery.nil? delivery = "‚È‚¢" else delivery = @delivery if @delivery =~ /‚S/s delivery = "4“ú" elsif @delivery =~ /•iØ‚ê‚Ìꇂ¨Žæ‚èŠñ‚¹/s delivery = "ŽæŠñ?" elsif @delivery =~ /û”/s #parse-error delivery = "ŽæŠñ" else delivery = '?' end end else message = "WAR; maybe data-error, no-title." @stderr.puts message.kconv(@messageKcode) end return delivery, flag end #===== ===== url ===== ===== def url_bibinfo () url = @url_site + "guest/cgi-bin/wshosea.cgi?W-ISBN=#{@isbn.delete('-').upcase}" return url end #===== ===== parse ===== ===== def parse_bibinfo (str) #----- set key and data ------ mode_tbl = { :title => '˜a‘Ѓf[ƒ^ƒx[ƒXŒŸõŒ‹‰Ê', # + title_kana + series :e_title => '\[Œ´‘–¼F', # + e_author :image => ' '