찾다

 >  Q&A  >  본문

BeautifulSoup: 최상위 텍스트와 기존 태그 조회 기능을 결합하시겠습니까?

BeautifulSoup을 사용하여 균일하지 않은 구조의 HTML 블록에서 정보를 추출하려고 합니다. 검색/필터 출력의 태그 사이에 텍스트 블록을 결합하는 방법을 찾고 있습니다. 예를 들어 HTML에서:

으아악

특정 유형의 태그를 무시하는 출력 목록을 생성하고 싶습니다(위의 예에서는 ulli),但捕获顶级未标记文本。我发现的最接近的是 .select(':not(ul,li)').find_all(['strong']). 그러나 둘 중 어느 것도 태그가 지정되지 않은 최상위 텍스트와 다양한 대상 태그를 모두 캡처할 수 없습니다. 이상적인 동작은 다음과 같습니다.

으아악

다음과 같은 출력이 생성됩니다.

<span>
    <strong>Description</strong>
    Section1
    <ul>
        <li>line1</li>
        <li>line2</li>
        <li>line3</li>
    </ul>
    <strong>Section2</strong>
    Content2    
</span>

P粉471207302P粉471207302441일 전522

모든 응답(1)나는 대답할 것이다

  • P粉905144514

    P粉9051445142023-09-16 00:38:21

    출력을 얻으려면 먼저 ,然后选择它的next_sibling를 선택하면 됩니다.

    으아아아
    출력
    으아아아

    회신하다
    0
  • 취소회신하다