파이썬 크롤링 : 특정 단어 이후에 나오는 테이블 가져오기

조회수 953회

크롤링할 페이지가

html로

텍스트
표테이블

텍스트
표테이블

텍스트
표테이블

이런식으로 되어있는데

제가 원하는 특정 단어가 들어간 텍스트문장이 나오면 바로 다음 표테이블을 가져오고 싶습니다.

어떤식으로 진행하면 될까요? ( 꼭 코드 설명이 없더라도 아이디어만 제시해주셔도 감사합니다) 크롤링은 selenium이랑 beautifulsoup으로 하고 있습니다.

ps. 현재 회사에서 질문 올리다보니 코드가 없습니다. 죄송합니다.

1 답변

  • <p>와우친구들</p>
    <table></table>
    
    <p>빡빡이아조씨야</p>
    <table></table>
    
    <p>요호호</p>
    <table></table>
    

    예를 들어 HTML이 위와 같고 찾으려는 텍스트는 "빡빡이"라고 가정하면:

    1. 일단 모든 <p>를 찾아서 텍스트에 "빡빡이"가 포함되어 있는지로 특정 <p>를 찾은 뒤
    2. 찾은 <p>의 바로 다음에 오는 <table>을 찾습니다.
    • 1번은 할 수 있을 것 같은데 2번은 구체적으로 좀 자세하게 말씀해주실 수 있나요? 알 수 없는 사용자 2020.3.18 15:54
    • 정확한 메서드명은 찾아봐야 하지만... next()나 siblings(), children() 같은 특정 노드의 위치를 기반으로 다른 노드를 탐색하는 API가 있으니 그걸 써보세요. 편집요청빌런 2020.3.18 16:16
    • 네 확인 해보겠습니다! 감사합니다. 알 수 없는 사용자 2020.3.19 11:47

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)