我必须使用完全不包含表单标记的Mechanize抓取页面。此页面只有一些选择标记,其中Javascript绑定到onChange事件。我需要更改这些选择并触发onChange事件,以便能够读取页面上显示的内容。
由于Mechanize在访问字段之前需要有一个表单对象,我注定了...当页面中没有表单时,有没有办法访问字段并更改值?
很多!
Seurdge
答案 0 :(得分:1)
我做了一个简单的脚本,使用Watir从没有表单的页面中提取数据:
require 'watir-webdriver'
require 'selenium-webdriver'
b = Watir::Browser.new
b.goto 'http://www.sitexcom/data.asp'
b.select_list(:id => 'select1').select_value "1"
sleep 2
b.select_list(:id => 'select2').select_value "1"
sleep 2
b.select_list(:id => 'select3').select_value "1"
sleep 4
data = b.table(:id => 'data_table_id')
data.rows.each do |row|
row.cells.each do |cell|
puts cell.text
end
end