본문 바로가기
블로그 관리/티스토리 블로그 관리

파이썬 Selenium을 활용한 블서치 백링크 등록 '자동화'

by Kibua20 2020. 8. 5.
반응형

티스토리 블로그를 운영하시는 분은 백링크의 중요성을 인지하고 계실 것 같습니다. 구글이나 네이버 검색 엔진에서 블로그의 백링크 수가 높은 경우 좋은 글로 판단해서 노출도를 높인다고 합니다.  백링크 사이트에 블로그 글을 등록하는 것이 검색엔진에 '노출도 향상'이 얼마나 실효성이 있을지 알 수는 없으니 최소한 손해 보는 일이 없을 것 같습니다  본인 판단 하에 등록 여부를 결정하시기 바랍니다. 

 

구글 서치 콘솔이나 네이버 서치 어드바이저에서는 아래와 같은 백링크 정보에 대한 통계치를 제공하고 있습니다. 

 

 

네이버와 구글 검색 엔진에서 제공하는 백링크 정보

 

 

 

본 포스팅의 실행 결과는 아래 동영상을 참조해주세요.

 

블서치 백링크 자동 등록

1. 블서치 백링크 등록 방법

백링크를 등록하는 사이트는 키자드블서치가 있습니다. 키자드는 블로그 글의 시작 번호와 끝 번호만 넣으면 자동으로 백링크 등록이 되지만, 블서치는 링크를 하나씩 수동으로 등록해야 하기 때문에 매우 불편합니다.  본 포스팅은 파이썬 크롤링 툴인 selenium을 활용하여 블서치에 티스토리 블로그를 자동하는 방법을 설명합니다. 

 

블서치에 접속하면 아래와 같은 메뉴가 나옵니다.  수동으로 등록하는 방법은 아래와 같습니다. 

  1. 상단 메뉴에서 '티스토리' 메뉴 선택
  2. 블로그 게시물에 대한 'URL' 입력 
  3. 티스토리 백링크 등록  

 

 

블서치 백링크 등록 방법

 

 


 

 


2. 블서치 자동 백링크 '자동' 등록

블서치에 백링크를 자동 등록하기 위해서는 파이썬 프로그램과 Chrome webdriver 설치가 필요합니다. (IT 비 전공자 분께는 어려울 수도 있을 것 같습니다.)

2.1 파이썬에서 크롤링 준비 

파이썬을 설치하고 Chrome webdriver를 설치합니다.  이에 대한 설명을 '여기'를 확인해서 설치해주세요Chrome 브라우저가 설치하지 않은 경우 Chrome도 설치해야 합니다.

 

# python selenimu 패키지 설치 

$ sudo pip3 install selenium


# chrome driver 설치 - Chrome 버전에 맞는 Web driver를 설치해야 함 (chromedriver_linux64.zip)

$ sudo mv chromedriver /usr/bin/  (or ~/.local/bin)

 

2.2. Python 소스 코드 다운로드 및 수정 

제 Git Hub 사이트에서 blogserach_kr폴더에서 blog_search_url_req.py 파일을 다운로드합니다.  

 

blog_search_url_req.py 에서 blogsearch_kr_url_req() 함수를 찾아서 각 티스토리 블로그에 맞는 값으로 수정해야 합니다.  블로그 ID와 등록하고자 하는 게시글의 시작 번호와 끝 번호를 수정합니다.  예를 들어,  제 블로그인 경우 URL이 https://kibua20.tistory.com/와와 같은 경우 blog_id값에  'kibua20'값을 넣고, 2번 글부터 102번까지 백링크를 등록하는 경우 from_url 값에는 '2'값과 to_url 값에는 '102' 값으로 변경합니다. 

 

def blogsearch_kr_url_req():
#---------------------------------------------------------------------------------------------------
# 티스토리 ID e.g.) https://kibua20.tistory.com/ 인 경우 kibua20 설정
# blog_id = 'kibua20'
blog_id = 'your_id'

# 로그 포스팅의 시작과 끝 번호 - https://kibua20.tistory.com/2 ~ https://kibua20.tistory.com/102
from_url =2
to_url = 102
#-----------------------------------------------------------------------------------------------------

#!/usr/bin/python3
# -*- coding: utf-8 -*-

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys

import os
import time

def blogsearch_kr_url_req():
    #---------------------------------------------------------------------------------------------------
    # 티스토리 ID     e.g.) https://kibua20.tistory.com/ 인 경우 kibua20 설정
    # blog_id = 'kibua20'
    blog_id = 'your_id'

    # 로그 포스팅의 시작과 끝 번호 -  https://kibua20.tistory.com/2   ~ https://kibua20.tistory.com/102 
    from_url =2
    to_url = 102
    #-----------------------------------------------------------------------------------------------------

    blog_url = 'https://'+ blog_id+ '.tistory.com/'

    # 블로그 서치 티스토리 등록 URL
    blogsearch_url = 'https://blogsearch.kr/tistory'

    option = Options()
    profile_dir = os.path.join(os.getcwd(), 'profile')
    option.add_argument("user-data-dir="+profile_dir)

    option.add_argument("disable-infobars")
    option.add_argument("disable-extensions")
    option.set_capability('unhandledPromptBehavior', 'accept')

    # webdriver 얻어옴
    browser = webdriver.Chrome(options=option)

    # blogsearch_url 접속
    browser.get(blogsearch_url)

    for idx in range(from_url,to_url+1):
        url = blog_url + str(idx)
        print(url)
        element = browser.find_element_by_class_name('form-control')

        # clear keys and url strings
        element.send_keys(Keys.CONTROL + "a")
        element.send_keys(Keys.DELETE)
        element.send_keys(url)

        # 등록 버튼 clk
        element_btn = browser.find_element_by_class_name('btn-dark')
        element_btn.click()

        try:
            time.sleep(1)
            browser.switch_to.alert.accept()
        except:
            time.sleep(0.5)
            pass

    time.sleep(2)
    browser.quit()

if __name__ == "__main__":
    blogsearch_kr_url_req()

 

2.3. Python 파일로 블서치에 백링크 등록

 

blog_search_url_req.py 가 저장한 폴더에서 터미널이나 Cmd 창을 열어서 python3으로 실행합니다.

 

blog_search_url_req.py 가 실행되면 사용자의 Chrome과는 별도로 broswer가 실행되고 ① 번의 Text box에 블로그 URL이 입력되고, ② 버튼을 누르고,  ③ 팝업창에 '확인'버튼을 누르도록 프로그램되어있습니다.  ③ '자동 수집 허용 동의' 팝업은 처음으로 등록하는 게시글에 대해서 1번만 표시됩니다. 이 경우에는 broswer.geturl() 함수 뒤에 time.sleep(30)을 추가해서 수동으로 입력해도 되고,  blog_search_url_req.py를 한 번 더 실행하면 입력이 가능합니다. 

 

# blog_search_url_req.py 실행 

$ python3 blog_search_url_req.py 

 

 

블서치 URL 자동 등록

 

 

 

★(Update) 백링크가 '가산점'이 될지 '감점'이 될지는 확실치 않음

백링크 사아트에 게시글을 등록하는 것이 검색 엔진의 노출에 도움이 된다는 글도 있고, 아래와 같이 악영향을 준다는 답변도 있습니다.  키자드나 블서치에 백링크 등록 여부는 본인 판단하에서 진행해주세요. 

 

제 블로그인 경우에는 키자드와 블서치 모두 백링크가 등록되어 있는 상태이며, 구글 검색엔진에서 게시글이 증가함에 따라서 노출 수가 증가하고 있습니다.  백링크 사이트의 영향이 있는지는 확인할 수 없습니다. 

 

 

제 블로그의 구글 검색 엔진 실적

 

 

관련 글

[모바일 SW 개발/Python] - 파이썬으로 Apk Download 자동화: Selenium기반의 Apk 크롤러

[블로그 관리] - 초보자를 위한 티스토리 블로그 애드센스 광고 설정 방법

[블로그 관리] - 티스토리 검색 기능이 제목을 가리는 문제 해결 방법 (티스토리 검색 기능 삭제)

[블로그 관리] - 티스토리 블로그 초보를 위한 대표 이미지 안 잘리게 만들기

[블로그 관리] - 티스토리 블로그 메뉴 추가하기

[블로그 관리/모바일 마케팅] - [용어정리 #6] 백링크 / 역링크

[블로그 관리/모바일 마케팅] - [용어 정리 #4] Android Install Referrer API

[블로그 관리/모바일 마케팅] - [용어 정리 #3] Deep link / App link

[블로그 관리] - 초보 블로그 관리: 서치 콘솔 등록부터 Adsense 낙방 후 2차 성공!

반응형



댓글12