Rubyのmechanizeでnameにハイフンがあると値を設定できない

   ブックマークに追加する



以前に作ったRubyクローラーを改造して、検索フォームに自動で値を設定するプログラムをつくりました。その際にテキストフィールドのnameにハイフンがあり値の設定にはまったので解決方法を記載します。
以下ですとエラーとなります。 ※keyword-fieldにハイフンが入っているためです。

    page = @agent.get('http://example.com')
    search_form = page.forms.with.action('http://example.com/search.html').first
    search_form.keyword-field = keyword

実は以下のように['keyword-field']とすればOK。簡単です。いろいろ検索したのですが、解決策が探せなかったので、記載してみました。

    page = @agent.get('http://example.com')
    search_form = page.forms.with.action('http://example.com/search.html').first
    search_form['keyword-field'] = keyword

トラックバック(0)

このブログ記事に対するトラックバックURL(トラックバックは承認後に公開されます)

コメントする

このブログ記事について

このページは、Humが2008年6月 9日 23:56に書いたブログ記事です。

ひとつ前のブログ記事は「「あわせて読みたい」と「feed meter」をブログに貼りました」です。

次のブログ記事は「覚えておいた方が良い10のLinuxコマンド機能」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

あわせて読みたいブログパーツ
フィードメーター - ウェブ-HACKS 「とりあえずやってみよう!」ブログ   
track feed
  • SEO対策 
  • _ 
  • _ 
  •  
  •  

このブログはクリエイティブ・コモンズでライセンスされています。