2011-09-12 94 views
1

我正在写一个下载(合法)一堆图像的刮板,我遇到了问题。在相关页面上,页面完成加载后,只需要花费很长时间通过css查找元素。因此,例如,我觉得剧本这里挂断了像10分:为什么硒测试如此缓慢?

@@wait.until do 
     find_element_by_css(css_selector) 
    end 
    @@driver.find_element(:css => css_selector).text 

def find_element_by_css(css_string) 
    @@wait.until do 
     @@driver.find_element(:css => css_string) 
    end 
end 

css_selector = "table:nth-child(6) tr:nth-child(2) .view-value"或类似的东西。现在,这件事情会在10-20分钟内没有任何事情的情况下悬挂起来。如果我删除对wait的呼叫,该脚本将引发超时异常。

关于如何解决这个问题的任何想法?任何帮助,将不胜感激。

回答

2

Selenium有一个错误使用CSS来定位IE中的元素。如果您切换到使用不同的浏览器(例如Firefox),您应该会看到性能的巨大提升。

2

我认为问题是错误的硒。我转向nokogiri,问题消失了。此外,我的应用程序的设计存在一些错误/不一致之处。

+1

机械化也是一个可行的选择 – Rekin

相关问题