RPA의 낭비 사용 Python+Selenium으로 아이돌의 SHOWROOM 50 카운트를 자동화

머리



동영상 라이브 전송, 시청을 무료로 할 수 있다SHOWROOM 라는 사이트가 있다. SHOWROOM에서는, 날마다, 아이돌/탤런트/웃음/성우로부터 아마추어 분까지 전달을 실시하고 있다. SHOWROOM에서는 시청자가 댓글을 달거나 무료 또는 유료의 아이템을 전달 중에 투고하면 전달자에게 포인트로 환원된다. 그 환원 포인트 중에서도 카운트라는 구조가 있다. 시청자는 코멘트를 투고하는 대신에 1부터 50까지의 숫자를 코멘트란에 넣어 송신하면, 코멘트한 것과 같은 포인트가 전달자에게 송부된다. 필자도 날마다, 좋아하는 아이돌의 SHOWROOM을 보러 가서, 이 50카운트를 실시하고 있습니다만, 이것이 귀찮아. 그래서, 이 SHOWROOM의 50 카운트를 RPA를 사용해 자동화하는 것을 생각해 보았다.

사전 준비



자동화에는 Python과 Selenium을 사용해 가서 Windows10과 Chrome의 환경을 사용한다. 먼저 파이썬을 설치 한 후 pip를 사용하여 Selenium을 준비합니다.

그런 다음 Chrome WebDriver을 다운로드하여 적절한 폴더로 확장합니다.

개발



SHOWROOM의 코멘트를 송신하는 HTML의 소스는 아래와 같이 되어 있다.

SHOWROOM 코멘트 송신 소스
 <div id="js-room-comment-wrapper" class="comment-form l-comment-form" >
    <form id="js-room-comment">
      <select id="js-comment-input-fixed" class="comment-input-fixed hidden mb-b"></select>
      <input type="text" class="comment-input-text" id="js-chat-input-comment" placeholder="コメントを投稿" autocomplete="off">
      <button type="submit" class="js-room-comment-btn comment-btn">
        送信
      </button>
    </form>
  </div>

여기서 class:comment-input-text의 텍스트 박스에 1~50의 숫자를 넣고 class:comment-btn의 버튼을 누를 곳을 자동화한다.

countshowroom.py
from selenium import webdriver
import time

def cntshowroom():
    driver = webdriver.Chrome("chromedriver.exe")
    driver.get("https://www.showroom-live.com/")

    var = input("Login and Open target Room. After that input any key.:")

    elem_comment_text = driver.find_element_by_class_name("comment-input-text")
    elem_comment_send = driver.find_element_by_class_name("comment-btn")

    for i in range(1,50):
        elem_comment_text.send_keys(i)
        while True:
           time.sleep(1)
           elem_comment_send.click()
           vv = elem_comment_text.get_attribute("value")
           if vv=="":
               break
        print(i)

    print "50 count finish"

cntshowroom();

SHOWROOM의 URL을 기동하고 나서, 로그인과 목적의 전달자의 룸에 들어가는 곳은, 이용자로 실시한다. 그 동안 input에서 대기하고 어떤 문자가 입력되면 50 카운트를 시작한다. 카운트가 완료되면 "50 count finish"라고 표시한다. 실행중인 화면의 예는 다음과 같습니다.


요약



Pytho + Selenium을 사용하여 SHOWROOM의 50 카운트를 자동화하는 RPA를 시도했다. 본래의 업무 효율화의 사용 방법과는 다를지도 모르지만, 같은 기호의 엔지니어 분, Selenium에서 진정한 업무 효율화를 목표로 하고 있는 분의 도움이 되면 다행이다.
앞으로는 로그인의 자동화, 별 던지기, 별 수집에 대해서도 자동화를 목표로 한다.

좋은 웹페이지 즐겨찾기