본문 바로가기
IT/python 응용

[파이썬 코딩] 인스타 팔로워 늘리기 프로그램 무료 #2. 로그인 및 페이지 접속

by 자유로여정 2022. 8. 2.

오늘은 로직을 구현해보겠습니다.

지난 포스팅에는 전체적인 프로그램 설계 개요에 대해서 포스팅했는데

혹시 궁금하신 분은 아래 지난 내용을 참고해주시길 부탁드립니다.

 

 

2022.08.01 - [IT/python 응용] - 인스타 팔로워 천명 만들기 프로그램#1. 개요 및 로직 요약

 

인스타 팔로워 천명 만들기 프로그램#1. 개요 및 로직 요약

인스타 팔로워 천명 만들기 프로그램을 개발해보고자 합니다. 최근 들어 어떤 식으로 팔로워를 늘릴 수 있는지에 대해서 확인해봤습니다. 국내 팔로워를 늘려준다는 여러 마케팅 업체도 심증상

waytofreedom.co.kr

 

※인스타 팔로어 늘리기 프로그램 무료 로직구현 단계

일단 python 과 jupyter notebook이 설치된 단계에서 시작해보겠습니다.

설치는 아주 아주 간단하고 이 블로그에도 게시되어 있습니다.

 

2022.07.16 - [IT/python 기본] - 파이썬 독학#3 파이썬 설치, jupyter notebook 설치하기

 

파이썬 독학#3 파이썬 설치, jupyter notebook 설치하기

세번째 시간입니다. 앞이 서론이면 이번 포스팅부터는 본론이겠네요. 일단 파이썬을 시작하기 위해서는 당연히 설치해야겠죠? 1. 파이썬 설치하기 https://www.python.org/ Welcome to Python.org The official h.

waytofreedom.co.kr

 

 

이제 각설하고 바로 구현들어가 보겠습니다.

현재 시각 8월 2일 13시 30분이네요.

먼저 chromedriver는 최신버전으로 설치하셔야합니다.

 

크롬 버전 확인하는 방법

① 크롬 버전을 확인

② 구글에 chromedriver 다운로드하여 공식페이지 접속, 동일 버전 확인 다운

 

위에 보면 103버전이죠? 동일한 버전의 드라이버를 다운 받습니다.

 

 

1. 인스타 접속 및 계정 로그인

자동으로 인스타 페이지부터 띄어보겠습니다.
크롬이 자동화된 테스트 소프트 웨어에 의해 제어되고 있다고 나옵니다.

이제 로그인을 시켜야겠죠?

나중에 gui 버젼으로 만들 수도 있으니 아이디와 패스워드는 따로 입력받을 수 있도록

변수로 처리해줍니다.

 

from selenium import webdriver
import pyperclip
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import ActionChains
import random
import time

#일단 필요 모듈부터 선언해줍니다.


get_id = "사용자 아이디 입력"
get_pw = "비밀번호 입력"

driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://www.instagram.com/')
#인스타 접속


time.sleep(2)
driver.find_element_by_xpath("""//*[@id="loginForm"]/div/div[1]/div/label/input""").send_keys(get_id)
#아이디를 입력하고

time.sleep(2)
driver.find_element_by_xpath("""//*[@id="loginForm"]/div/div[2]/div/label/input""").send_keys(get_pw)
#비밀번호를 입력하고

time.sleep(2)
driver.find_element_by_xpath("""//*[@id="loginForm"]/div/div[3]/button/div""").click()
#로그인버튼을 눌러봅시다.

time.sleep(5)

 

※ driver.find_element_by_xpath("""주소""").click()

명령어 : xpath 주소로 요소를 찾아고 클릭해라.
웹에는 요소들이 존재합니다. 
xpath란 것으로 요소를 찾아라. find_element_by_xpath
찾은 이후 클릭해라 ! 라는 의미에서 .click() , .send_keys("...")
뒤쪽에 여러가지 명령어를 추가 붙여서 요소에 대한 명령을 할 수 있습니다.

xpath란 요소가 html 상 어느위치에 있는지 나타내는 것입니다. 
쉽게 이야기하면 보시고 계신 화면에 어떤 그림이 어디에 있다하는 정보 입니다.
xpath를 확인하려면 ctrl + shift + i 의 select 로 확인할 수 있습니다.

 

 

※ 중간 중간 time.sleep(int) 는 무엇인가요?

명령어 : int만큼 지연시켜라
time.sleep은 해당 명령어가 있는 곳에서 정수형 (int) 만큼 시간을 지연 시킵니다.
예를 들어

print("안녕하세요")

time.sleep(5)

print("5초 뒤에 안녕하세요")

첫번째 안녕하세요가 실행된 뒤 5초 이후에 아래 구문인 print() 명령어가 실행됩니다.
웹은 기본적으로 우리가 실행할 때 페이지가 로딩하는 시간이 소요됨으로 의도적이고 직관적으로 확인할 수 있도록 명령어 사이 사이에 지연명령어를 넣어줌으로서 에러방지를 목적으로 합니다.
물론 한단계 높은 레벨의 명령어가 있지만 이 포스팅에서는 직관적으로 확인할 수 있도록 time.sleep()으로 설정하도록 합니다.

 

다음 포스팅으로 로그인 이후 어떤 해시태그를 검색하여 좋아요를 누르는 과정을 진행해보겠습니다. ^^

댓글