mechanize:Mechanize::Form::Option#select_list
以下のような HTML で
<html> <head> <title>form test</title> </head> <body> <form method="get" action="cgi/foo00.cgi" name="form1"> <select name="select1"> <option>1</option> <option>2</option> </select> <select name="select2" multiple> <option>foo</option> <option>bar</option> </select> </form> </body> </html>
>> require 'mechanize' => true >> agent = Mechanize.new => #<Mechanize:0xb74a5594 ... >> page = agent.get('http://127.0.0.1:8080/test20_select.html') => #<Mechanize::Page ... >> f = page.form('form1') => #<Mechanize::Form ... >> f.fields[0].options[0].select_list => #<Mechanize::Form::SelectList:0xb7498574 @options=[#<Mechanize::Form::Option:0xb7497df4 @select_list=#<Mechanize::Form::SelectList:0xb7498574 ...>, @selected=false, @text="1", @value="1">, #<Mechanize::Form::Option:0xb7497d40 @select_list=#<Mechanize::Form::SelectList:0xb7498574 ...>, @selected=false, @text="2", @value="2">], @name="select1", @value=[], @node=#<Nokogiri::XML::Element:0x..fdba4c2f6 name="select" attributes=[#<Nokogiri::XML::Attr:0x..fdba4aac8 name="name" value="select1">] children=[#<Nokogiri::XML::Element:0x..fdba4bf18 name="option" children=[#<Nokogiri::XML::Text:0x..fdba49d80 "1">]>, #<Nokogiri::XML::Element:0x..fdba4bf0e name="option" children=[#<Nokogiri::XML::Text:0x..fdba495ba "2">]>]>> >> f.fields[0] => #<Mechanize::Form::SelectList:0xb7498574 @options=[#<Mechanize::Form::Option:0xb7497df4 @select_list=#<Mechanize::Form::SelectList:0xb7498574 ...>, @selected=false, @text="1", @value="1">, #<Mechanize::Form::Option:0xb7497d40 @select_list=#<Mechanize::Form::SelectList:0xb7498574 ...>, @selected=false, @text="2", @value="2">], @name="select1", @value=[], @node=#<Nokogiri::XML::Element:0x..fdba4c2f6 name="select" attributes=[#<Nokogiri::XML::Attr:0x..fdba4aac8 name="name" value="select1">] children=[#<Nokogiri::XML::Element:0x..fdba4bf18 name="option" children=[#<Nokogiri::XML::Text:0x..fdba49d80 "1">]>, #<Nokogiri::XML::Element:0x..fdba4bf0e name="option" children=[#<Nokogiri::XML::Text:0x..fdba495ba "2">]>]>> >> f.fields[1].options[1].select_list => #<Mechanize::Form::MultiSelectList:0xb7497bec @options=[#<Mechanize::Form::Option:0xb749791c @select_list=#<Mechanize::Form::MultiSelectList:0xb7497bec ...>, @selected=false, @text="foo", @value="foo">, #<Mechanize::Form::Option:0xb7497868 @select_list=#<Mechanize::Form::MultiSelectList:0xb7497bec ...>, @selected=false, @text="bar", @value="bar">], @name="select2", @value=[], @node=#<Nokogiri::XML::Element:0x..fdba4be32 name="select" attributes=[#<Nokogiri::XML::Attr:0x..fdba4726a name="name" value="select2">, #<Nokogiri::XML::Attr:0x..fdba47260 name="multiple" value="multiple">] children=[#<Nokogiri::XML::Element:0x..fdba4bcd4 name="option" children=[#<Nokogiri::XML::Text:0x..fdba460fe "foo">]>, #<Nokogiri::XML::Element:0x..fdba4bca2 name="option" children=[#<Nokogiri::XML::Text:0x..fdba45974 "bar">]>]>> >> f.fields[1] => #<Mechanize::Form::MultiSelectList:0xb7497bec @options=[#<Mechanize::Form::Option:0xb749791c @select_list=#<Mechanize::Form::MultiSelectList:0xb7497bec ...>, @selected=false, @text="foo", @value="foo">, #<Mechanize::Form::Option:0xb7497868 @select_list=#<Mechanize::Form::MultiSelectList:0xb7497bec ...>, @selected=false, @text="bar", @value="bar">], @name="select2", @value=[], @node=#<Nokogiri::XML::Element:0x..fdba4be32 name="select" attributes=[#<Nokogiri::XML::Attr:0x..fdba4726a name="name" value="select2">, #<Nokogiri::XML::Attr:0x..fdba47260 name="multiple" value="multiple">] children=[#<Nokogiri::XML::Element:0x..fdba4bcd4 name="option" children=[#<Nokogiri::XML::Text:0x..fdba460fe "foo">]>, #<Nokogiri::XML::Element:0x..fdba4bca2 name="option" children=[#<Nokogiri::XML::Text:0x..fdba45974 "bar">]>]>>