0. 전체 스크립트 앞선 분석과 준비 과정을 통해 코드를 작성할 준비를 모두 마쳤습니다. 전체 코드를 본 다음에 기능별로 설명을 이어나가겠습니다. import time, os import pandas as pd from glob import glob from datetime import date from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.options import Options from slack_sdk import WebClient from slack_sdk.errors import SlackApiError chrome_options = Options() c..
0. 크롤링을 위한 사이트 분석 Selenium을 사용하기 위한 작업과 Slack bot 설정을 모두 마쳤으니 이제는 크롤링을 할 대상을 파악할 단계입니다. IP정보를 크롤링 해올 C-TAS 홈페이지는 로그인이 필요하기 때문에 먼저 로그인 페이지에 대한 분석을 먼저 시작합니다. 개발자 도구에서 확인해보니 "idPWWrap"이라는 div에서 userId와 userPassword에 각각 아이디와 패스워드를 입력받고 있습니다. request 요청에서도 주의깊게 살펴볼 부분은 없어보이기 때문에 간단한 파이썬 코드를 작성해 로그인 테스트를 해봅니다. 1. 로그인 테스트 다음과 같은 파이썬 코드를 실행하면 안타깝게도 유효하지 않은 접근으로 차단이 되는 것을 확인할 수 있습니다. import requests from..
0. Slack Bot slack-sdk를 활용해 위협 IP를 슬랙 메세지로 발송하기 위해서는 파이썬의 요청을 수행하기 위한 전용 bot이 필요합니다. 이를 위해 Slack API 홈페이지에서 bot을 생성하고 적절한 권한을 부여해야 합니다. 1. Slack Bot 생성 Slack API 홈페이지에서 "Create an app"을 클릭하고, 곧바로 뜨는 팝업창에서 "From scratch"를 클릭합니다. 뒤이어 나오는 화면에서 bot의 이름과 bot을 사용할 슬랙 워크스페이스를 지정하고 "Create App"을 클릭합니다. 참고로 bot의 이름은 언제든 수정할 수 있습니다. 이후 "Bots"을 클릭합니다. 2. Bot 권한 부여 bot 생성 후 "OAuth & Permissions" 메뉴의 "Scopes..