커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
파이썬 웹스크롤링 강의에서 다른 부분이 존재하여...
undefined주차
북마크
이*결
댓글
6
추천
0
조회수
21
조회수
21
답변 완료
  1. 강의 3-8까지 들었습니다.
  2. 그러나 강의 3-7에서 6분 38초부터 'a가 None이 아닐 때' 이 부분에서 오류가 납니다.
  3. 구글에 검색을 하여 다른 방법으로 하였습니다.


3-7 강의에서는 a가 None이 아닐 때 라고 하였으나, None이 아닌 비어있는 배열이 콘솔에 나타납니다.

그리하여 구글에 검색하여 다른 방법을 찾아 하게 되었습니다.

문제는 3-8까지 하였으나, 강의에 콘솔에 출력되는 형태랑 제가 콘솔에 출력한 형태가 다릅니다.



전체 화면

스파르타 즉문즉답스파르타 즉문즉답스파르타 즉문즉답





작성한 코드 및 에러 메세지


위에는 제가 출력한 결과물입니다.

밑에는 저의 코드입니다.

강의에서는 '01 밥정 9.64' 라고 나타납니다만, 저는 위에처럼 한 줄씩 나타납니다.

상관 없는건가요?

import requests
from bs4 import BeautifulSoup

headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get('https://movie.naver.com/movie/sdb/rank/rmovie.naver?sel=pnt&date=20210829',headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')


#old_content > table > tbody > tr:nth-child(3) > td.title > div > a
#old_content > table > tbody > tr:nth-child(4) > td.title > div > a
#old_content > table > tbody > tr:nth-child(2) > td:nth-child(1) > img


moviestexts = soup.select('.tit5 > a')
movieranks = soup.select('.ac > img')
moviestars = soup.select('.point')


for movies in [moviestexts, movieranks, moviestars]:
    for movie in movies:
        if movie.string:
            print(movie.string)
        if movie.string == None and movie['alt'] != 'na':
            print(movie['alt'])




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴