我正在编写一个爬取各种网页并使用 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 有不同的名称也能工作?