Python 识别网页上广告的机制[特别是AdBlock]

Python 识别网页上广告的机制[特别是AdBlock],python,open-source,web-crawler,ads,adblock,Python,Open Source,Web Crawler,Ads,Adblock,我目前正在做一个研究项目,我正试图找出一个好方法来识别访问网页html的广告 我想从AdBlock开始可能是个好主意。AdBlock是一个防止向用户显示广告的程序,因此它可能有一种机制来识别广告 我下载了AdBlockPlus的源代码,但我发现自己完全迷失在所有文件中。我不知道从哪里开始寻找这种检测机制,所以我想知道是否有人对从哪里开始有任何建议。或者,如果您以前处理过AdBlock并且熟悉它,我将非常感谢您提供任何额外的信息 例如,如果网页需要在真实的浏览器中呈现才能使用Adblock,则有一

我目前正在做一个研究项目,我正试图找出一个好方法来识别访问网页html的广告

我想从AdBlock开始可能是个好主意。AdBlock是一个防止向用户显示广告的程序,因此它可能有一种机制来识别广告

我下载了AdBlockPlus的源代码,但我发现自己完全迷失在所有文件中。我不知道从哪里开始寻找这种检测机制,所以我想知道是否有人对从哪里开始有任何建议。或者,如果您以前处理过AdBlock并且熟悉它,我将非常感谢您提供任何额外的信息

例如,如果网页需要在真实的浏览器中呈现才能使用Adblock,则有一些程序会自动加载网页,因此这不会是一个问题,但我不确定如何确定Adblock一开始是否就是这么做的

注意:AdBlock是用Python和Perl编写的:)


谢谢

我建议你先看看写作


然后,一旦您了解了这一点,就可以开始使用各种语言进行解析,以满足您的需要

不,使用Adblock并不需要渲染元素。你所需要的只是可以应用在HTML元素URL上的过滤规则,以检查它们是否是广告。谢谢!还有一个问题:你提到“adblock列表”,他们称之为“订阅”,这是“过滤器列表”,例如:然而,它看起来只是一个URL列表。过滤器是否仅限于列出URL(可能带有通配符*)?此外,您还可以在HTML元素中识别广告。您还具有正则表达式支持(尽管出于性能原因不建议使用),并且规则不必总是包含主机名。您还可以使用。但总的来说,规则非常简单。你知道这意味着什么吗:widget.shopstyle.com/widget?pid=$subdocument,第三方它有一个逗号,我在你链接到我的过滤规则中找不到它的意思。在$are选项之后的东西。请参阅adblock筛选器规则链接。