【发布时间】:2013-10-21 17:10:13
【问题描述】:
我正在编写一个程序,它可以爬取各种网页并使用 Selenium 进行一些测试。
现在我想找出这些网站上使用了哪些 CSS 框架来获得一些统计数据。
现在,我只需检查 FireFox Webdriver 是否在页面中链接了具有特定框架名称的 .css 文件:
Iterator<WebElement> divWebElementIteratorCSS = webDriver.findElements(By.xpath("//link[@rel='stylesheet']")).iterator();
然后我检查找到的 .css 文件的名称是否包含我要检查的 CSS 框架之一的名称:
if ( src.contains( frameWorkName ) && cssFrameWorks.get( frameWorkName ) == false ) {
result.addAttribute("Framework", "STRING", frameWorkName);
result.setPercent( 100 );
result.setSuccessful( true );
cssFrameWorks.put( frameWorkName, true );
}
Hashmap frameWorkName 包含我感兴趣的所有框架的名称。
现在我的问题:如果站点管理员重命名了框架的.css文件,我的测试就不行了!有没有一种安全的方法来检查这一点,即使 .css 有不同的名称也有效?
【问题讨论】:
-
什么是“CSS 框架”?你有例子吗?
-
类似 Bootstrap、Foundation 或 YAML 的东西!
-
为什么需要知道这些信息?无论他们使用 YAML 还是其他东西,它对你有什么用处?
-
我的老板想要一个统计数据,我们的合作伙伴使用哪些框架来支持响应式设计(有很多方法可以手动完成或直接询问)。
标签: java css selenium frameworks