크롤링 연습

BBOrong_22·2022년 4월 14일

스파르타 원정

목록 보기
35/52

네이버 영화 평점에서

랭킹,영화제목,평점 가져오기
네이버영화
저번 시간에서 title가져오기 까지 했었다.

내가 한것

알게된 점
위에서 순서 엉망으로 해도
print 할때,순서대로 적으면 순서대로 출력된다.

선생님이 하는 방법

순위에서 오른쪽검사하면

순위표시인 alt값만 가져올것이다.
일단 copy selector한다

for tr in trs:
    a_tag = tr.select_one('td.title > div > a')

    if a_tag is not None:
        title = a_tag.text
        rank = tr.select_one('td:nth-child(1) > img')
        print(rank)

rank를 한번 찍어본다.
<img alt="50" 어쩌고가 나온다.
'alt'값이 제일 중요해 보인다.
print(rank['alt'])
▶순위가 순서대로 쭉 나온다.

그런데 ['alt']값이 print(rank['alt']) 여기 있을 필요가 없다.
rank = tr.select_one('td:nth-child(1) > img')['alt']
여기로 보내준다.드래그하고 그대로 옮기면 옮겨진다.신기하다⭐
같은 rank라서 가능하다.
그대로 ▶run하면 똑같이 나온다.

star = tr.select_one('td.point')
        print(star.text)

별점도 마찬가지로 copy selector 해준다.
역시나 .text가 여기있을 필요 없고
star = tr.select_one('td.point').text
이렇게 둔다.

마무리로
print(rank,star,title)
하면 순서대로 나온다.

크롤링은 정답을 찾아가는 게 아니다.
되게 만드는게 크롤링이다.
같은 크롤링을 하더라도 사람마다 세운 전략이 다 다르다.
그래서 코드가 다 다를 수 있다.
결국은 뽑아내느냐가 중요하다.

profile
아 스파르타 복습해야한다..

0개의 댓글