Changeset 16810 for lang/ruby/echola

Show
Ignore:
Timestamp:
07/29/08 22:07:57 (5 years ago)
Author:
whym
Message:

add posting function

Location:
lang/ruby/echola
Files:
1 added
2 modified

Legend:

Unmodified
Added
Removed
  • lang/ruby/echola/99todo.txt

    r16771 r16810  
    1515   - 文とか全文がスター引用されている場合に、文が壊れると思う 
    1616 
    17 * 二号機?(一号機の拡張) 
     17* 一.五号機 
    1818  - シードとなるテキストを与えて、それに対する反応っぽいものを返す 
    1919  - 単語間距離をコーパス中で測定して、適当に学習しておいて、それで近そうな文を選ぶ 
  • lang/ruby/echola/random-replace-agent.rb

    r16771 r16810  
    66require 'kconv' 
    77require 'optparse' 
     8require 'logger' 
     9require 'hatenahaikuagent' 
     10 
     11$logger = Logger.new "#{here}/random-replace-agent.log" 
    812$opt = Struct. 
    9         new(:verbose, :haikufile, :starfile, :num, :seeds). 
    10         new(false,    "#{here}/hatenahaiku.db", "#{here}/hatenastar.db", 30, []) 
     13          new(:verbose, :haikufile, :starfile, :sleep). 
     14          new(false,    "#{here}/hatenahaiku.db", "#{here}/hatenastar.db", 180) 
    1115 
    1216OptionParser.new do |opts| 
     
    3943end 
    4044 
     45$logger.info "#{allentries.size} entries loaded" 
     46$logger.info "#{allquotes.size} quotes loaded" 
     47 
    4148class Array 
    4249  def randelem 
     
    4552end 
    4653 
     54haikuagent = HatenaHaikuAgent.new("#{here}/hatena-account.yaml", "#{here}/random-replace-agent.log") 
     55 
    4756while true do 
    4857  ent = allentries.randelem 
    4958  quo_orig = ent.quotes.randelem 
    5059  if !quo_orig or quo_orig == '' then 
     60    $logger.info "skip entry: #{ent.inspect}" 
    5161    next 
    5262  end 
     
    5464  newtext = ent.text 
    5565  newtext.gsub!(/#{quo_orig}/, quo.text) 
    56   puts newtext 
    57   puts %! #{quo.text} <- #{quo_orig}! 
    58   puts ent.link, quo.link 
     66  haikuagent.post <<"EOD" 
     67#{newtext} 
     68 
     69 
     70#{ent.link} 
     71#{quo.link} 
     72EOD 
     73  $logger.info "post: #{newtext} made from #{ent.inspect}, #{quo.inspect}" 
     74  sleep $opt.sleep 
    5975end