for finding in soup.findAll(text=reg_compiled_keyword):
if finding.parent.name == "img":
continue
new_text = re.sub(reg_compiled_keyword,cls.keyword_replace_tmpl.format(escaped_kw,id,escaped_kw),finding)
finding.replaceWith(new_text)
For 루프는 NavigableString 개체를 반환하고 replace 함수를 사용하면 잘못된 HTML을 발생시키는 특성 내의 텍스트도 바꿉니다.BeautifulSoup 찾기 및 바꾸기로 인해 HTML 문제가 발생합니다.
현재 NavigableString이 속성 내에있어 건너 뛸 수 있는지 어떻게 확인할 수 있습니까?
find_all()은 속성 값인 NavigableString을 제공하지 않는다는 것을 알고 있습니다. 속성 값 내에있는 NavigableString을 가져 왔습니까? – Ansari
문제를 나타내는 작은 HTML 샘플을 게시 할 수 있습니까? –
안녕하세요, 반환 객체가 참으로 NavigableString이 아닌 Comment 객체라는 것을 알았습니다. 머리를 주셔서 감사합니다. @Ansari –