본문 바로가기
프로젝트/인스타그램 좋아요 봇

파이썬 인스타그램 좋아요 봇 만들기 #14 댓글달기

by 큰공 2020. 12. 29.
728x90
반응형

개요

 파이썬 자동화 프로그램을 만들어 자동으로 좋아요를 하는 봇을 만들어 보자

 혹시나 앞선 포스팅을 못 봤다면 복습하고 오자.

2020/08/26 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #1 Selenium

2020/08/27 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #2 로그인

2020/08/31 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #3 태그검색

2020/09/02 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #4 좋아요 누르기

2020/09/07 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #5 최근 게시물 선택하기

2020/09/08 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #6 랜덤함수

2020/09/14 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #7 list index out of range

2020/09/17 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #8 페이지 새로고침

2020/10/05 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #9 xpath 찾기

2020/10/08 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #10 이미 좋아요 누른 게시물 패스하기

2020/10/21 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #11 태그 검색 변경하기

2020/10/29 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #12 광고성 글 건너뛰기

2020/11/03 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #13 selenium 언어설정

 

파이썬 인스타그램 좋아요 봇 만들기 #13 selenium 언어설정

개요  파이썬 자동화 프로그램을 만들어 자동으로 좋아요를 하는 봇을 만들어 보자  혹시나 앞선 포스팅을 못 봤다면 복습하고 오자. 2020/08/26 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들

coinpipe.tistory.com

 

 

들어가며

 이때까지 좋아요 봇을 만들어서 타 게시물에 좋아요를 자동으로 하는 매크로 봇을 만들어 보았다. 좋아요만으로는 아무래도 나의 계정을 알리는데 한계가 있다.

 이에, 좋아요를 한 게시물에 대해서 댓글도 남기는 기능을 구현하였고, 이 내용에 대해서 포스팅 해보고자 한다.

 

로직

 1) 사용할 댓글에 대한 리스트를 미리 작성해 놓는다. 필자는 약 20개 정도의 임의 댓글을 구성하였다.

 2) 댓글 사용 여부 Flag 를 두어, 댓글 기능 on / off 를 제공한다.

 3) 좋아요 20개 당 하나의 댓글을 달아 놓도록 rand 함수를 구현한다.

 4) 댓글 element 를 얻어오고, 댓글을 작성한다.

 

댓글 리스트

 필자는 먹거리 관련 포스팅을 하고 있기 때문에, 먹거리 관련 코멘트를 미리 작성해 두고, 이를 list 화 해둔다.

comment_list = ['먹팔해요', '좋은 사진 잘보고 갑니다 ~~~', '맛있어보이네요오!! 먹팔해요 선팔하구 갈게요', 
                '정성가득 홈메이드는 사랑이죠❤ 넘넘 맛있겠어요♥ 맛있는거 많이 드시고 행복한 하루 보내시길바래요  ‍^^', 
                '깔끔한 밥 맛있겠네용♥', '제가 좋아하는 비쥬얼♥' ,'피드 잘 구경하고 선팔하고갑니다. 먹팔하고 소통해요 ^^',
                '너무 너무 반가워요!♥ 우리 먹팔해요 ₍₍ (ง ˙ω˙)ว ⁾', '선팔하고갑니당 먹팔해요❤️❤️',
                '♥ 먹팔하고 자주소통해용 ‼️ ♥  댓글 달아주시면 먹팔할게용 ♥', '사진이 너무 맛있어보여요 소통하고싶어서 선팔하고갑니다 ^^ 먹팔해욧',
                '선팔하고가요~ 먹팔해용♥', '우와 맛있겠어요옹 먹팔하고 찐소통해요오:)', '맛나보여요 ^^ 선팔하고 갑니다~ 먹팔하고 소통자주해요',
                '돌돌말아 한입하고프네요♥', '피드 구경하고 선팔하고가요 먹팔하고 소통해요'  ]

 

댓글 기능 on / off Flag

 사용하여 테스트를 진행하다 보니, 계정이 잠기는 일이 발생하였다. 매번 댓글 기능을 수행하는것이 아니라, 필요할때만 사용하기 위해서 댓글 on / off 을 할 수 있도록 Flag 를 하나 설정 하였다.

#comment_flag = False
comment_flag = True

 

완성된 코드

            # 댓글 달기
            if comment_flag == True and randint(0,20) == 0 :
                try : 
                    comment = browser.find_element_by_xpath('/html/body/div[5]/div[2]/div/article/div[3]/section[3]/div/form/textarea')
                except : 
                    try :
                        comment = browser.find_element_by_xpath('/html/body/div[4]/div[2]/div/article/div[3]/section[3]/div/form/textarea')
                    except :
                        print ("exception in Comment")
                        break 

                comment_content = comment_list[randint(0,len(comment_list)-1)]

                ac = ActionChains(browser)
                ac.move_to_element(comment)
                ac.click()
                ac.pause(3)
                ac.send_keys(comment_content)
                ac.pause(1)
                ac.send_keys(Keys.ENTER)
                ac.perform()

                print ("Comment Sucess ", comment_content)

 파이썬은 Tab 에 굉장히 민감하다. 복사 붙여넣기시 Tab 부분이 정상적으로 복붙이 안될 수 있으므로 이에 유의하여 코드를 수행하자.

 

 xpath 를 찾는 방법은 2020/10/05 - [IT/파이썬] - 파이썬 인스타그램 좋아요 봇 만들기 #9 xpath 찾기에서 상세히 기술하였으니, 댓글 영역에 대한 xpath 를 찾자.

 

 테스트 하다보니, 게시물에 대해서 댓글 영역의 xpath 가 두가지 정도로 나뉘어 있음을 확인했고, 두 가지 xpath 를 try-excpet 으로 묶었다.

 

 댓글이 잠겨있거나 다른 xpath 를 가지는 경우에는 exception 이 발생한다.

 

 

 

 

 

 

728x90
반응형

댓글