인프런 커뮤니티 질문&답변

Hyungchul Jung님의 프로필 이미지
Hyungchul Jung

작성한 질문수

파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

CSS selector 사용해서 크롤링하기2 (업데이트)

  를 만났을때 피하는 방법

작성

·

287

0

        fn_items = fn_highlight.select('tr')

        roe_row = fn_items[19]

        roe_row = roe_row.find_all('td')

        for i in roe_row:

            v = float(i.get_text())

위와 같이 값을 가져와서 변수를 float 타입으로 입력하는 걸 만들고 있는데요. 

일부 테이블에는   값이 있는데 이걸 변환하다가 죽는데요. 이걸 피하려면 어떤 조건문을 쓰면 될까요

답변 2

1

안녕하세요.

이렇게 특이한 경우에는 try/except 구문을 쓰는 것이 가장 좋긴 한데... 간단하게 try: 후에 시도해볼 명령을 탭으로 띄워서 코드를 넣으시면 되고요. 여기에서 에러가 나면, except: 로 넘어갑니다. 예외라고 하는데 예외가 났을 때, 처리할 명령을 넣으시면 되는데 이 때 continue 를 넣으면 아무 동작을 안하고, 다음 반복 구문으로 넘어갑니다.

부득이 조금 특이한 경우라서, 이렇게 쓰는 것이 조금 기본 문법을 넘어서는 부분이 있지만, 필요할 것 같습니다. 특이한 부분이니까 이정도만 알고 계시면 좋을 것 같습니다. 감사합니다.

for i in roe_row:

    try:

        v = float(i.get_text().strip())

    except:

        coutinue

0

감사합니다. :)

Hyungchul Jung님의 프로필 이미지
Hyungchul Jung

작성한 질문수

질문하기