From 551bb1c9f85382a90abc89ac622bd363dccd36a7 Mon Sep 17 00:00:00 2001 From: Scott Worley Date: Sat, 30 Dec 2023 04:33:36 -0800 Subject: [PATCH 1/1] Only look within each chunk-dom for chunk fields --- glowfic.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/glowfic.py b/glowfic.py index a700995..e192646 100644 --- a/glowfic.py +++ b/glowfic.py @@ -74,21 +74,22 @@ def chunkDOMs(html: BeautifulSoup) -> Iterable[Tag]: def makeChunk(chunk_dom: Tag, image_store: ImageStore) -> Chunk: def getIcon() -> str | None: - icon_div = chunk_dom.find_next('div', class_='post-icon') + icon_div = chunk_dom.findChild('div', class_='post-icon') if icon_div is None: return None - icon_img = icon_div.find_next('img') + assert isinstance(icon_div, Tag) + icon_img = icon_div.findChild('img') if icon_img is None: return None assert isinstance(icon_img, Tag) return image_store.get_image(icon_img.attrs['src']) def getByClass(css_class: str) -> Tag | None: - tag = chunk_dom.find_next('div', class_=css_class) + tag = chunk_dom.findChild('div', class_=css_class) assert tag is None or isinstance(tag, Tag) return tag - content = chunk_dom.find_next('div', class_='post-content') + content = chunk_dom.findChild('div', class_='post-content') assert isinstance(content, Tag) return Chunk(getIcon(), -- 2.44.1