【发布时间】:2011-06-17 15:49:09
【问题描述】:
我正在使用 watir-webdriver 从具有基于嵌套表的布局的页面中抓取。例如,我在http://veryslow.staticloud.com/ 构建了一个非常小的玩具站点。要搜索包含元素 USSR 和巴西的最内层表,我使用以下代码:
require "rubygems"
require "watir-webdriver"
r = Watir::Browser.new
br.goto("http://veryslow.staticloud.com/")
reg = /USSR.+Brazil/m
mytable = br.table(:text,reg).table(:text,reg).table(:text,reg).table(:text,reg).table(:text, reg).table(:text, reg)
mytable.text
我有两个问题:
- 有没有更好的方法来搜索这些内表?
- 为什么这么慢?要实际定位表格(当我调用
mytable.text时完成),需要大量时间。对于具有基于嵌套表格的布局的复杂网站,这会非常长。
我知道嵌套表设计是个坏主意,但如果你必须从中读取,有没有更快的方法来做到这一点?
【问题讨论】:
-
您正在访问的网站的服务条款是否允许未经许可自动访问该网站?如果没有,你有权限吗?也许有某种方式可以让网站更容易访问(例如,更易于测试)
标签: ruby screen-scraping watir html-table watir-webdriver