プロが教える店舗&オフィスのセキュリティ対策術

http://www.sanabo.com/words/
上記サイトから言葉を拾ってきて、つぶやかせるという自動botを考えてます。

流れとしては、サイト上からスクレイピングしデータを切り取り(nokogiri)、それをハッシュ?の中に格納して、その値の中からランダムにつぶやかせる。という感じかなと思ってます。
※TwitterのAPIはなんとか大丈夫です。

ですが、2点疑問があります。
01) サイト見てみると、「あ」…「お」など言葉がディレクトリごとに分かれており、どうやってアクセスして切り取ってくるのか不明?正規表現とか使うのでしょうか?
02) どういうふうにハッシュの中に値を入れるのか?

ご教授いただけますでしょうか?
よろしくお願いいたします。

A 回答 (2件)

No1です。


まず、02の方は、Arrayに入れます。

words = []
繰り返し開始
 words << 取得した言葉
繰り返し終了

つぶやく言葉 = words.sample

で、wordsというArrayから乱数で1つ選ばれます。

01の方は、HTMLのソースを見て、手動で単語を集めるとするとどうするかを考え、それをプログラムに直します。

プログラムをあまり書いたことが無いのであれば、
1.まずは自分がHTMLを見て単語を集めてみる
2.今度は、離れたところに居る見知らぬ人もそのHTMLを見ているとして、電話でその人に指示して単語を集めるとしたら何と指示するかを考える
3. 2の内容をプログラムに変換する
という手順でやってみるといいかと思います。
    • good
    • 0
この回答へのお礼

すみません、返信遅れました。。。

上記の方法で試してみます。

ありがとうございました。

お礼日時:2011/12/18 14:13

Nokogiriをそれなりに使ってスクレイピングする知識があるという前提で、質問を眺めると、


01) が全くもって意味不明です。そういう目で見直すと、単語をランダムにつぶやくのに「ハッシュに入れる」というのも理由がわからない(普通はArrayに入れませんか?)。

もしかして、Nokogiriやスクレイピングは、単語を知っているだけで具体的なやり方は知らず、Rubyもほとんど知らないというレベルですか?それならそれで、回答のしようがあるのですが。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
はい。おっしゃるとおりRubyのほとんどを知りません。。。

何か別の方法はあるのでしょうか?

よろしくお願いいたします。

お礼日時:2011/12/02 00:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!