-
Python Selenium을 이용한 인스타그램 자동 내리기How to Dev 2021. 12. 17. 12:47
Python으로 웹 크롤링을 하기 위한 도구 중 selenium을 사용하여 간단한 자동내리기를 구현하겠습니다.
설치 준비 사항
pip install selenium
크롬 버전 확인
chrome://version/
크롬 버전 확인 크롬 버전에 맞는 크롬 드라이버 찾기
# 95버전 이하 https://sites.google.com/a/chromium.org/chromedriver/downloads # 96버전 이상 https://sites.google.com/chromium.org/driver/
OS 버전에 맞게 드라이버 다운로드
드라이버 다운로드 다운로드 된 드라이버를 파이썬 실행 파일 위치로 이동
실행 파일 위치로 이동 주피터 노트북 또는 파이썬 실행
# 임포트 from selenium import webdriver from time import sleep # 드라이버 연결 browser = webdriver.Chrome('./chromedriver') browser.implicitly_wait(1) browser.get('https://www.instagram.com/') sleep(3) # 인스타그램 로그인 username_input = browser.find_element_by_css_selector("input[name='username']") password_input = browser.find_element_by_css_selector("input[name='password']") username_input.send_keys("인스타그램 ID") password_input.send_keys("인스타그램 패스워드") login_button = browser.find_element_by_xpath("//button[@type='submit']") login_button.click() # 브라우저 오픈 및 스크롤 다운로드 SCROLL_PAUASE_TIME = 1.5 # 예제 browser.get('https://www.instagram.com/drawandrew/?hl=ko') browser.get('자동스크롤 하고 싶은 인스타 주소') while True: sleep(SCROLL_PAUASE_TIME) #스크롤을 내려준다 last_height = browser.execute_script("return document.body.scrollHeight") browser.execute_script("window.scrollTo(0, document.body.scrollHeight);") sleep(SCROLL_PAUASE_TIME) new_height = browser.execute_script("return document.body.scrollHeight") if new_height == last_height: browser.execute_script( "window.scrollTo(0, document.body.scrollHeight);") sleep(SCROLL_PAUASE_TIME) new_height = browser.execute_script( "return document.body.scrollHeight") if new_height == last_height: break else: last_height = new_height continue
'How to Dev' 카테고리의 다른 글
2021 Full-stack 개발자 (0) 2021.12.14 RESTful API를 이용하여 PostgreSQL 연계 (0) 2021.12.14 Istio란? (0) 2021.12.10 Visual Studio Code Javascript 라이브 로깅 (0) 2021.12.07 git pull error(강제 덮어쓰기) (0) 2021.09.16