혼만파 3주차 선택과제 etf 분석 질문

etf 페이지를 playwright로 살펴보니 header값이 따로 존재하지 않고 1번째 열이 헤더를 대체하고 있더라고요 ‘thead>tr>th’ 대신 "tbody>tr>th"를 사용하고있는 걸 확인했습니다.
step_1_3.py 의 코드는 시가총액 데이터에 헤더가 존재해 그대로 헤더를 사용하고 바디에 tr이하 모든 부분을 사용한지라 etf분석을 위해 헤더 부분을 tbody>tr>th로 바꿨습니다만 추출이 재대로 이뤄지지 않습니다.
제가 보기엔 19번째 줄 코드인
body=[tr.locator(“td”).all_inner_texts() for tr in tag_tbody.all()]부분이 헤더 추출 코드인 16,17과 충돌하면서 발생하는 오류같은데 어떻게 해결해야할 지 모르겠습니다. 다들 추가 과제 어떻게 해결하시고 계신가요?

tbody > tr로 먼저 추출한 뒤에 th(header)와 tb(body)로 나눠서 처리하면 어떨까요? tb중엔 all_inner_texts() 값이 없는 것이 있어서 이에 대한 적절한 처리도 필요합니다.

1개의 좋아요

마침 궁금한게 바디에서 all_inner_texts()가 행렬로 분리가 안돼서 head(여기서는 th)와 열 개수가 맞지 않는다고 하더라고요 시가총액 때에도 똑같이 all_inner_texts()를 사용했는데 어떨 때 이런 차이가 발생하는 지 아시나요?

all_inner_texts()에 값이 없는 경우 발생하지 않을까요?

그렇다면 빈 텍스트가 추출될 텐데 텍스트가 파일에 존재하긴 합니다 다만 행으로만 반환하고 열을 1개만 쓰길래 여쭤봤습니다 답변 감사합니다 조언 토대로 해결해보겠습니다.