1. 로그인

# 크롬창으로 인스타그램 홈 들어가기

import chromedriver_autoinstaller
from selenium import webdriver

driver = webdriver.Chrome()

url = 'http://www.instagram.com/'
driver.get(url)

 

# 아이디 비밀번호 입력후 로그인

#인스타로그인
id = '<나의 아이디>'
pw = '<나의 비밀번호>'


#아이디/비밀번호 칸 copy full xpath/  
input_id = driver.find_element('xpath', '/html/body/div[2]/div/div/div[2]/div/div/div/div[1]/section/main/article/div[2]/div[1]/div[2]/form/div/div[1]/div/label/input')
input_pw = driver.find_element('xpath', '/html/body/div[2]/div/div/div[2]/div/div/div/div[1]/section/main/article/div[2]/div[1]/div[2]/form/div/div[2]/div/label/input')


input_id.send_keys(id)
input_pw.send_keys(pw)

# 로그인 버튼 클릭
driver.find_element('xpath','/html/body/div[2]/div/div/div[2]/div/div/div/div[1]/section/main/article/div[2]/div[1]/div[2]/form/div/div[3]').click()

 

 

2. 해시태그 검색

# 검색할 해시태그 'ootd'

 

hashtag = 'ootd'
url = f'https://www.instagram.com/explore/tags/{hashtag}/'
driver.get(url)

 

 

3. 스크롤 내리기

import time

for _ in range(1): #스크롤을 한번만 내림
    driver.execute_script('window.scrollTo(0, document.body.scrollHeight)') 
    # 안에 자바스크립트 문법을 쓸 수 있다. 0부터 끝까지 스크롤 이동
    #time.sleep(3) #3초 쉬고 스크롤내리기

 

 

4. 원하는 사진 클릭하기

pic = '/html/body/div[2]/div/div/div[2]/div/div/div/div[1]/div[1]/div[2]/section/main/article/div/div/div/div[1]/div[3]/a'
driver.find_element('xpath',pic).click()

 

 

5. 좋아요 클릭

like = '/html/body/div[8]/div[1]/div/div[3]/div/div/div/div/div[2]/div/article/div/div[2]/div/div/div[2]/section[1]/span[1]/div'
driver.find_element('xpath', like).click()

 

 

6. 댓글달기

comment = '/html/body/div[8]/div[1]/div/div[3]/div/div/div/div/div[2]/div/article/div/div[2]/div/div/div[2]/section[3]/div/form/div/textarea'
msg = '★'
driver.find_element('xpath', comment).click()
driver.find_element('xpath', comment).send_keys(msg)

btn = '/html/body/div[8]/div[1]/div/div[3]/div/div/div/div/div[2]/div/article/div/div[2]/div/div/div[2]/section[3]/div/form/div/div[2]/div'
driver.find_element('xpath',btn).click()

'컴퓨터 비전 > 웹 서비스' 카테고리의 다른 글

FastAPI  (0) 2023.12.16
Streamlit  (2) 2023.12.03
픽사베이  (1) 2023.12.03
셀레니움  (0) 2023.12.02
크롤링(Crawling)  (0) 2023.12.02