如何使用adblockparser规则匹配html tag.id或tag.class名称?

时间:2016-03-08 04:35:54

标签: python web-scraping adblock

from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc,'html.parser')
for tag in soup.find_all(True):
    print rules.should_block([TAG ID OR TAG CLASS])    

据我所知,Adblock可以根据其名称阻止HTML元素。

例如:

如果div的ID为#ads,则会被阻止。

我该怎样做类似的事情?

1 个答案:

答案 0 :(得分:0)

要阻止类名,您需要过滤器

||domain.com##.classnamehere

要按ID阻止元素,您需要过滤器

||domain.com###IDnamehere

如果你想更好地理解过滤器,那么这里有一个很好的入门书:https://adblockplus.org/filters

如果您正在尝试了解哪些过滤器正在影响特定网站,那么这里有一个很好的过滤搜索引擎:http://blockadblock.com/search-adblock-filters.php

将过滤器添加到Python解析器可能超出了这个答案的范围,但是这里有很多好的文档:https://github.com/scrapinghub/adblockparser