크롤링 수집하는 방법이 선생님들 마다 차이가 있음
그래서 처음에 당황했지
수업은 주피터 사용하고 이런저런 복습은 구글 코랩을 이용한다
(왜 이러는지 모르지만.. 미춰버리겠다.)
주피터랑 코랩이랑 환경이 다르니까 ㅋㅋㅋㅋ 왜 여기선 실행되는데
저기는 안되냐... 하면서
쥐어짜매는중 ㅋㅋㅋ 하지만 내가 선택했으니....
https://movie.daum.net/ranking/reservation
랭킹 | 다음영화
Daum영화에서 자세한 내용을 확인하세요!
movie.daum.net
네이버 영화 들어갔다가 안되서 다음영화로 돌아온건 안 비밀ㅋㅋㅋㅋㅋ
여기 정보를 수집해 보겠다.
# 함수 생성
# 요청함수
def getSource(site) :
# 헤더 정보 세팅
# 등등등 한거 많음
# 중요한건 밑에 부분이니 밑에 부분만 입력 !
해당 사이트에서
f12를 누르면 이렇게 정보들이 나오고 ㅋㅋ
원하는 정보 위치값 얻어오면 된다.

# 2 - 1
# 한 페이지의 데이터를 수집해 저장하는 함수
def getData(source) :
# bs4 객체 생성
soup = bs4.BeautifulSoup(source)
# 영화 전체를 가져온다.
li_list = soup.select('#mainContent > div > div.box_ranking > ol > li')
for li_tag in li_list :
# 항목 확인 후 주석 처리
# print(li_tag)
# print('---------------------------------------')
# 3 - 2
# 데이터 담을 딕셔너리 생성
data_dict = {
'영화제목' : [],
'평점' : [],
'예매율' : [],
'개봉일' : [],
'영화설명' : [],
'관람등급' : []
}
# 영화 제목
# li_list 중복 부분 삭제 하기
a1 = li_tag.select_one('div > div.thumb_cont > strong > a')
data1 = getText(a1)
# 영화 평점
a2 = li_tag.select_one('div > div.thumb_cont > span.txt_append > span:nth-of-type(1) > span')
data2 = getText(a2)
# 예매율
a3 = li_tag.select_one('div > div.thumb_cont > span.txt_append > span:nth-of-type(2) > span')
data3 = getText(a3)
# 개봉일
a4 = li_tag.select_one('div > div.thumb_cont > span.txt_info > span')
data4 = getText(a4)
# 영화 정보
a5 = li_tag.select_one('div > div.thumb_item > div.poster_info > a')
data5 = getText(a5)
# 관람 등급
a6 = li_tag.select_one('div > div.thumb_item > div.poster_movie > span.txt_tag > span')
data6 = getText(a6)
print(data1)
print(data2)
print(data3)
print(data4)
print(data5)
print(data6)
print('----------------------------')
# 3 - 1
# 데이터를 담는다.
data_dict['영화제목'].append(data1)
data_dict['평점'].append(data2)
data_dict['예매율'].append(data3)
data_dict['개봉일'].append(data4)
data_dict['영화설명'].append(data5)
data_dict['관람등급'].append(data6)
여기에서 !!!!!
주피터 노트북은 위치 경로에서 nth-child 이 부분 그대로 사용 되지만
코랩에서는 오류 생김
그래서 nth-child → nth-of-type 로 변경해야한다.
아 진짜 이거때매 엄청 검색질했네
그냥 주피터 쓰면 되는데 왜 코랩을 시작했을까 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
태그 문자열로 변환 해주고 나서 결론 !

촵 ~~~~~
근데 코랩에서 이걸 데이터프레임으로 저장이 되질 않는다.......
왜지.......다시 찾아봐야지
그치만 나는 지금 수리남을 시작했다고한다.........ㅋㅋㅋㅋㅋㅋㅋㅋ
728x90
'파이썬(Python) > 크롤링 연습' 카테고리의 다른 글
크롤링 - 주식데이터 (0) | 2023.04.06 |
---|---|
유튜브 - 재생목록 크롤링 (0) | 2022.12.08 |
크롤링 - 공공데이터 오픈API 활용 (0) | 2022.08.23 |
크롤링_셀레니움을 이용해 멜론차트 순위 !! (0) | 2022.08.10 |
크롤링 - Yes24 베스트 셀러 정보 (0) | 2022.08.09 |