ㅁ 개요
O 프로그램 소개
- 이번 글은 이전글( (실습)파이썬 네이버에서 강아지로 검색 후 강아지 이미지를 자동으로 크롤링 하는 프로그램 만들기 - 3.네이버 검색 페이지에서 모든 소스 가져오기)에 이은 5번째 글로 이전글에서 가져온 소스에서 이미지 태크만 뽑아내는 방법에 대해서 설명합니다
O 완성된 프로그램 실행 화면
1.소스코드를 실행하면 아래와 같이 검색결과를 가져와서 보여줍니다.
첫번째 보여주는 것은 html 그대로의 소스입니다.
ㅁ 세부 내용
O 완성된 소스
소스 : 4.crawing_naver.py
O 소스 실행
O 주요 내용
크롤링(스크래핑)을 하려면 소스(html)의 구조 분석을 해야 합니다. 아래 간략히 설명합니다.
*크롤링 : 다 가져오는 것
*스크래핑 : 원하는 것만 가져오는 것
**여기서는 그냥 크롤링이란 용어로 통일하겠습니다.
1.검색페이지에서 첫번째 강아지 이미지 위에 마우스 우클릭 > 검사를 누릅니다.
2.아래 화면과 같이 이미지의 클래스 속성이 '_fe_image_tab_content_thumbnail_image' 이렇게 되어 있습니다.
3. 두첫번째 강아지 이미지 위에 마우스 우클릭 > 검사를 누릅니다.
4.아래 화면과 같이 이미지의 클래스 속성이 '_fe_image_tab_content_thumbnail_image' 으로 첫번째 이미지의 클래스 속성과 동일합니다. 몇 개 더 이미지의 클래스 속성을 살펴보았더니 모두 동일합니다.
즉, 우리가 가져오려는 이미지는 클래스의 속성이 ' _fe_image_tab_content_thumbnail_image'인 이미지를 가져오면 되겠다라는 것을 알아 냈습니다.
5.아래 소스에 대해 간략히 설명하면 다음과 같습니다.
line 42 : soup객체의 find함수를 이용하여 img태그의 클래스 속성이 ' _fe_image_tab_content_thumbnail_image ' 인 이미지를 가져옵니다.
**참고
soup.find() : 소스내 일치하는 첫번째 내용물만 가져옵니다.
soup.find_all() : 소스내 일치하는 모든 내용물을 가져옵니다.
우리는 이후 시간에 find_all()함수를 이용하여 img태그의 클래스 속성이 ' _fe_image_tab_content_thumbnail_image '인 모든 모든 이미지를 가져올 것입니다.
아래와 같이 코드 실행 시 하나의 이미지 태그만 가져온 것을 알 수 있습니다.
ㅁ 정리
O 우리가 배운 내용
- 오늘 우리가 배운 내용 중 가장 중요한 부분을 꼽으라면 아래와 같습니다.
soup객체의 find함수를 이용하여 img태그의 클래스 속성이 '_fe_image_tab_content_thumbnail_image' 인 이미지를 가져옵니다.
- 다음 시간에는 이전글에서 가져온 소스내 이미지 태크의 속성 중에서 'src' 와 'alt' 만 가져와서 리스트에 담는 방법에 대해 알아보겠습니다.
오늘은 여기까지이며, 댓글과 하트는 제가 이글을 지속할 수 있게 해주는 힘이 됩니다.
감사합니다.