# 특정 텍스트의 바로 뒤에 있는 텍스트를 찾습니다.
target_text = '건국대학교 충주캠퍼스'
tag = soup.find(string=target_text)
if tag and tag.next_sibling:
text = tag.next_sibling
print(text.strip())
else:
print("텍스트를 찾을 수 없습니다.")
이 코드인데요, 각주에 나온 것 처럼 웹 사이트의 HTML 에서 특정 텍스트의 다음 텍스트를 추출 하는 코드를 만드려고 하는데,
next_sibling에 문제가 있는 지 계속 else 값이 출력되더라구요.
"<a class="I9XQzweX" href="/w/%EA%B1%B4%EA%B5%AD%EB%8C%80%ED%95%99%EA%B5%90/%EA%B8%80%EB%A1%9C%EC%BB%AC%EC%BA%A0%ED%8D%BC%EC%8A%A4" title="건국대학교/글로컬캠퍼스" data-v-704aabb6="">건국대학교 충주캠퍼스</a><span class="_6gXybSmt" data-v-704aabb6="">(시각광고디자인과 / 학사)</span>"
이게 본 HTML 중 일부만 발췌해왔는데, 이 경우에 next_sibling 을 쓰면 오류가 뜨는 이유가 뭘까요..
그리고 만약 정정한다면 어떻게 정정해야 할까요?
이게 아마도.... 제 생각에는 next_sibling이 <span> 으로 잡혀서 이게 텍스트가 아니니까 else 값으로 가는 거 같은데 태그랑 텍스트가 구분이 되는 지 안되는 지도 궁금하고 어렵네요..
댓글 1