我正在开发一个必须使用selenium检测网页上的广告的项目。 我尝试了解adblock plus代码,但无法理解。我已经采用了一个过滤器列表,并开始将DOM元素id和类与过滤器列表中的每个条目进行模式匹配。这花费了很多时间。有人可以建议一个有效的方法或改进代码。 示例代码段
WebDriver wd = new FirefoxDriver();
wd.get("http://celebslam.celebuzz.com/");
for ( WebElement e : wd.findElements(By.tagName("div")) ) {
for (String add :list)
if(e.getAttribute("id").toLowerCase().matches(".*"+add+".*"))
System.out.println(e.getAttribute("id"));
}
我也在课堂上做同样的事情 样本列表看起来像这样
list.add("zMSplacement3");
list.add("zMSplacement4");
list.add("zoneAdvertisment");
list.add("zone_b_ad");
list.add("zone_c_ads");
使用大约1500种模式来识别所有广告标签。