네이버 TV의 경우 유튜브에 비해서 사용자가 압도적으로 부족하다. 시장점유율의 2% 정도라고 이야기하니, 알만하다. 그런데 수익창출 조건에 구독자 300명이 있다. 이것은 유튜브로는 구독자 3000명보다 어렵다고 이야기한다. 하지만 나는 힙뀽이! 이 정도 자동화 프로그램을 만드는 데는 30분도 안 걸렸다. 간단하게 계속해서 구독했다고 댓글을 달고 나도 구독을 해달라고 하면 되는 것이다. 이걸로 하루도 안 돼서 구독자가 82명이다. 사실 이 프로그램을 제작하고부터 따지면 훨씬 빠른 시간만에 이 정도 구독자를 달성한 것이다. 곧 구독자 300명이 되고 수익창출을 할 수 있을 것으로 기대한다.
거두 절미하고 이게 코드다.
# 네이버 TV 맞구독 자동화
from selenium import webdriver
from bs4 import BeautifulSoup
import time
driver = webdriver.Chrome('chromedriver.exe')
def NaverLogin():
driver.implicitly_wait(3)
# fh url에 접근한다.
driver.get('https://nid.naver.com/nidlogin.login')
time.sleep(3)
# 아이디 비번 입력
#driver.find_element_by_name('id').send_keys('네이버ID')
time.sleep(1)
#driver.find_element_by_name('pw').send_keys('네이버PW')
# 자동 입력문제가 있으면 여기를 조절하기
time.sleep(10)
# 로그인 버튼
#driver.find_element_by_xpath('//*[@id="frmNIDLogin"]/fieldset/input').click()
def WritingComments(naver_TV_URL, idx):
try:
driver.get(naver_TV_URL)
except:
return
# 맞구독할 댓글입력
text = '안녕하세요! 구독했습니다~~ 힙합 음악 추천, 이슈 정리를 하는 ~ #힙뀽이 ~ 입니다. 맞구독하길 바랍니다! | https://tv.naver.com/hipgyung | 다른 분들도 모두 선구독 해주시면 바로 맞구독 갑니다!)'
# 이제 사이트 분석해서
html = driver.page_source
soup = BeautifulSoup(html, 'html.parser')
videoURL = soup.find_all('div', {'class' : 'thl_a'})
videoURL = soup.find_all('a', {'class' : 'cds_thm'})
# 맞구독에 맞는 동영상 링크들을 가져오기
URL_list = []
for link in videoURL:
if 'href' in link.attrs: # 내부에 있는 항목들을 리스트로 가져옵니다 ex) {u'href': u'//www.wikimediafoundation.org/'}
URL_list.append(link.attrs['href'])
i = 1
# 맞구독할 URL로 이동해서 댓글달기
for URL in URL_list:
# 이동하는 코드
try:
driver.get("https://tv.naver.com" + URL)
# 댓글 입력
driver.find_element_by_xpath('//*[@id="cbox_module__write_textarea"]').send_keys(text)
# 댓글다는 코드
driver.find_element_by_xpath('//*[@class="u_cbox_upload"]/button').click()
# 몇번째인지 찾기
print(idx, i)
i += 1
# 1초만 기다리기
time.sleep(1)
except:
pass
def naverTV(name, start=1, end=10):
for i in range(start, end):
naver_TV_URL = 'https://tv.naver.com/search/clip?query={}&sort=rel&page={}&isTag=false'.format(name, i)
WritingComments(naver_TV_URL, i)
def naverTVlist(namelist, endlist):
for name,end in zip(namelist,endlist):
naverTV(name, end=end)
if __name__ == '__main__':
# 네이버 로그인
NaverLogin()
# 크롤링할 거 이름 + 범위
#naverTVlist(["구독", "꿀팁", "리뷰"], endlist=[4,4,4])
#naverTVlist(["힙합 이슈", "힙합 음악", "힙합 추천", "음악 추천"], endlist=[4,4,4,4])
#naverTVlist(["힙합", "음악"], endlist=[10, 10])
#naverTVlist(["국힙", "외힙"], endlist=[3, 3])
naverTVlist(["크리에이터", "섹시", "it 리뷰"], endlist=[3, 3,2])
https://m.smartstore.naver.com/gyunggyung/products/4848817970
코드 설명과 아무것도 모르는 사람도 사용할 수 있는 코드이 가능하게 설명해준 내 책이다.
사실 이렇게 공개하는 것만으로도 여러 사람들이 악용을 할까 걱정이 별로 안 된다 ㅋㅋㅋ 개인적으로 오픈소스 광신 도기에 Open AI에서 GPT 2를 공개하지 않는다는 것도 헛소리로 들렸다. 결국 지금은 공개했고...
코드 설명은 일단 주석을 잘 달았다고 생각하고 더 자세한 설명은 나중에 하겠다.
'IT 이야기' 카테고리의 다른 글
개발자로 구직하는 사람들에게 (0) | 2020.03.10 |
---|---|
책 소개 : '파이썬을 통해서 배우는 크롤링, 매크로에서 데이터 분석까지 | 국민청원 크롤링, 네이버 TV 댓글 매크로, 마스크 구매 매크로 등' (0) | 2020.03.09 |
파이썬으로 배우는 매크로 + 크롤링 첫 번째 강의 후기 | 네이버 댓글 매크로, 마스크 구매 매크로, 데이터 크롤링 (0) | 2020.03.03 |
파이썬으로 배우는 매크로 + 크롤링 강의 계획 | 네이버 댓글 매크로, 마스크 구매 매크로, 데이터 크롤링 (0) | 2020.03.02 |
네이버 TV 맞구독 프로그램으로 10일만에 구독자 300명 돌파! (0) | 2020.02.22 |