Tag: 广告

广告过滤服务器端

我正在开发一个Web应用程序,我在其中显示来自其他网站的HTML。 在显示最终版本之前,我想摆脱广告。 关于如何实现这一点的任何想法,建议? 它不需要是一个超级高效的过滤工具,我在考虑将adblockplus定义的一些filter移植到Ruby,并在Nokogiri的帮助下返回解析的文档。 假设我使用超级通配符filterad 。 这不是官方adblock,但为了简单起见,我会在这里使用它。 然后想法是删除任何属性与filter匹配的所有元素,例如: src=”http://ad.foo.com?my-ad.gif” href=”http://ad.foo.com” class=”annoying-ad”等 此filter的Nokogiri命令是: doc.xpath(“//*[@*[contains(., ‘ad’)]]”).each { |element| element.remove } 我为此页面应用了filter: 结果是: 不是那么糟糕,请注意全局通配符filter也删除了有效的元素,如标题,因为它们具有id=”masthead”等属性。 所以我认为这种方法对我的情况来说是好的,现在的问题是使用什么filter? 他们有一个巨大的filter列表 ,我不想迭代所有这些filter。 我正在考虑抓住前10-20并根据它解析文档,那里有最受欢迎的列表吗? 如果是这样,我一直无法找到它。

如何查找广告的最终目的地(url)(以编程方式)

这可能是微不足道的,或者不是,但我正在研究一种软件,它将validation通过我的Web应用程序显示的广告的“行尾”域。 理想情况下,我有一个我不想提供广告的域名列表(假设Norton.com就是其中之一),但大多数广告网络通过缩短的,含义模糊的URL(adsrv.com)提供广告,最终重定向到Norton.com。 所以问题是:有任何一个构建,或者知道如何构建,类似刮刀的工具将返回广告的最终目标url。 初步发现:某些广告采用Flash,JavaScript或纯HTML格式。 模拟浏览器是完全可行的,并且可以对抗不同格式的广告。 并非所有Flash或JS广告都有noflash或noscript替代品。 (浏览器可能是必要的,但如上所述,这非常好……使用像WatiN或WatiR或WatiJ或Selenium等的东西……) 喜欢开源,这样我就可以自己重建一个。 真的很感激帮助! 编辑*此脚本需要点击广告,因为它可能是Flash,JS或只是HTML plain。 因此Curl不太可能是一个选项,除非Curl可以点击?