머신러닝 수업을 들으면서 데이터셋을 많이 모아야 했는데 kaggle사이트를 통해 데이터셋을 받는 쉬운 방법도 있지만
직접 파이썬 크롤링을 이용하여 데이터셋을 모으고 싶었다.
- 인스타그램 크롤링
구글 이미지를 통해 파이썬 크롤링을 진행하였지만 이미지가 부족했고, 공식적인 이미지가 많이 보였기 때문에 인스타그램을 통한 크롤링을 진행하기로 하였다
- 파이썬 코드

파이썬 크롤링을 위한 전체 코드
- 코드 설명


인스타 그램 로그인을 하기위해 아이디와 비밀번호를 입력해 줍니다.
아이디 input 박스와 비밀번호 input박스의 css selector 가 같기 때문에
input_id = driver.find_elements_by_css_selector('input._2hvTZ.pexuQ.zyHYP')[0],
input_id = driver.find_elements_by_css_selector('input._2hvTZ.pexuQ.zyHYP')[1] 로 설정합니다.

텍스트가 입력되는 시간을 고려하기 위해 time.sleep(7) 구문을 추가하였고 로그인 버튼 클릭을 위해서
driver.find_element_by_css_selector('button.sqdOP.yWX7d.y3zKF').click() 구문을 사용
로그인 진행 후에는 아래 사진과 같이 귀찮은 알림 설정창이 튀어 나오는데 나중에 하기 버튼을 클릭하여 다음 페이지로 넘어가야 한다.

driver.find_element_by_css_selector('button.aOOlW.HoLwm').click() 으로 나중에 하기 버튼을 클릭한다.

elem = driver.find_element_by_css_selector('input.XTCLo.x3qfX') css_selector를 통해서 인풋 박스를 클릭 후
elem.send_keys(search) 원하는 검색어를 입력해줍니다.

이후 검색어 선택

이후 스크롤을 내려줍니다 ( 내리는 이유는 구글 이미지 크롤링에 포함)

이후 중요한 이미지 다운로드
구글 이미지는 이미지 태그를 찾는 과정에서 금방 태그가 나왔기 때문에 손 쉽게 했지만 인스타그램은 이미지 태그를 찾는데 꼭꼭 숨어있어서 찾기가 정말 힘들었다...

for 문을 통해서 images를 모두 다운로드한다

다운로드된 이미지를 확인하고 마무리 완료
깃허브 주소 : https://github.com/beombeom1119/crawling
GitHub - beombeom1119/crawling: crawling instargram googleimg use selenium
crawling instargram googleimg use selenium. Contribute to beombeom1119/crawling development by creating an account on GitHub.
github.com

코드를 정리하면서 발견했는데 누군가 내 코드를 Fork해주셨다. 뭔가 뿌듯하고 감사하다
'휴지통.. > Python' 카테고리의 다른 글
파이썬을 이용한 크롤링 - 구글 이미지 (0) | 2021.09.16 |
---|