첫 크롤링 실습_웹툰 순위

대략 20분짜리 유튜브 영상으로 크롤링하는 법을 대강 익혔다. 방학동안 공부한 프론트엔드 덕에 원리가 익숙해서 바로 실습에 도전하기로 마음 먹을 수 있었다.

실습 목표 : 웹툰 플랫폼인 봄툰에서 웹툰 순위 긁어오기

발생한 문제들

  1. 순위 별 웹툰에 대한 정보들이 div class='cont'에 담겨있다. 근데 이 안에 3개의 p가 존재하며 웹툰의 제목은 그 중 첫번째 p에 들어있다. 이것만 긁어오려면 어떻게 해야할까?
  2. 텍스트 파일로 크롤링한 결과를 저장하고 결과 확인 시 한글 깨짐 현상이 발생했다.
  3. 결과 저장 시 태그까지 저장된다.
  4. 결과 저장 시 공백, 개행, 줄바꿈까지 저장된다.

최종 코드

 f = open("봄툰_웹툰_순위.txt", 'w', encoding='utf-8')
    #txt 저장 시 한글 깨짐 현상 방지 위해 encoding='utf-8' 추가
    
    list=soup.select(".cont > p") 
    #select 함수는 리스트 타입 반환
    #class="cont"의 자식들 중 태그가 p인 애들을 모두 긁어와서 저장    
        
    for i in range(len(list)) :
        if (i%3!=0) :
            continue
        data=list[i].get_text() #태그 부분 삭제
        title=re.sub('\s+',' ',data) #공백 부분 삭제
        f.write( title+"\n" ) #파일 저장

좋은 웹페이지 즐겨찾기