Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion crawl4ai/content_filter_strategy.py
Original file line number Diff line number Diff line change
Expand Up @@ -683,9 +683,14 @@ def _remove_comments(self, soup):
element.extract()

def _remove_unwanted_tags(self, soup):
"""Removes unwanted tags"""
"""Removes unwanted tags, respecting preserve_tags whitelist."""
for tag in self.excluded_tags:
for element in soup.find_all(tag):
# Skip elements that match preserve_tags — they should be kept
# even if the tag is in excluded_tags (e.g., <aside> with
# preserve_tags=["aside"]). See #2125.
if self.preserve_tags and tag in self.preserve_tags:
continue
element.decompose()

def _is_preserved(self, node):
Expand Down