我想用几张图片替换在chrome上查看的任何网站上的所有广告。虽然我对chrome扩展没有太多经验,但我的一般编码知识足以成功地对一些扩展(例如catblock)进行反向工程以完成我想要的工作。
我现在遇到的问题是,在我想要运行它的位置,网络上有一个阻止大多数广告服务器的过滤器,这是扩展程序要替换的内容。
我考虑尝试使用代理来允许广告通过,但除了可能激怒网络管理员之外,还需要我维护服务器以保持扩展能够正常工作。
问题是,如何通知扩展程序这些广告的位置?现在,它会查找带有常见广告服务器网址的iframe。
答案 0 :(得分:0)
在网络级别阻止广告的防火墙会导致请求失败。
您可以使用webRequest
API(顺便说一句,这是编写广告拦截器的最佳工具)来检测此类实例,可能是onErrorOccurred
事件。
您可以查看某些示例的Adblock Plus源代码;事实上,很可能你可以根据自己的需要调整它。
请注意 - 如果请求失败,您可能不知道广告的预期尺寸,因此您的替换可能会破坏网页的布局。