셀레니움은 웹 크롤링을 하거나, 작업을 자동화하기 위해 자주 쓰이곤 한다. 또한, 이 기능을 활용하여 구현한 웹의 테스트 케이스를 자동으로 실행 가능하도록 만들 수 있다. 이를 위해 파이썬으로 셀레니움을 사용하기 위한 방법에 대해 정리하고자 한다. 설치 1. selenium 파이썬의 경우 `pip`가 있으므로 간단하게 설치할 수 있다. 설치 환경은 Pycharm을 사용하고 `venv`를 사용하는 프로젝트를 기준으로 설명하고자 한다. Pycharm 하단에 `Terminal`을 클릭 한 후에, `pip install selenium`을 입력하면 간단히 설치할 수 있다. 2. web-driver 각자 사용하고자 하는 웹에 따라, 웹 드라이버 파일을 프로젝트 폴더 내에 위치시켜야 한다. 또한 웹 드라이버와 현재..
인생은 경험이라는 말과 같이, 취업 준비 또한 경험이 만들어 내는 결과 같다. 더 좋은 기업, 더 좋은 연봉, 더 좋은 복지를 바라기 전에 신입 개발자로서 실무에 필요한 경험들을 쌓아가는 것이 좋다고 생각하고, 나는 안랩 최종 합격을 끝으로 취업 활동을 멈추었다. 상반기와 달라진 점이 있다면 서류 합격률이 올라갔다는 것과, 어떤 식으로 나의 경험을 녹여내면 좋은지에 대한 감이 생겼다는 것이다. 나중에 이 글을 보는 나에게도 도움이 되고, 다른 누군가에게도 도움이 되지 않을까라는 생각을 하며 회고해보고자 한다. 서류 작성, 어떤 기업을 통과했나? 상반기 결과는? 상반기에 서류 작성을 할 때는 마음이 급하기에 기업이 원하는 자소서보다는 얼기설기 말을 맞추어 작성하기 급급하였던 것 같다. 누가 봐도 자소서를 ..
Switch 앞서 작성한 글에서 허브는 `Collision Domain`을 나눌 수 없어, 하나의 포트에서 메시지를 보낼 경우 다른 포트는 지연된다고 설명하였다. 하지만 이와 달리 스위치는 각 포트 별로 Collision Domain을 나눈다. 즉, 포트 별로 통신을 수행할 수 A허브에서 발생하는 지연이 발생하지 않는다. Collision Domain을 위한 기능 Learning 테이블을 이용하여, 각 `Collision Domain`에 어떤 `MAC addr`이 있는지에 대한 정보를 저장한다. 이는 장비의 제원에 따라 테이블 크기가 다르다. Flooding 테이블에 존재하지 않는 `MAC addr`일 경우, 모든 포트로 전송해 일치하는 목적지를 찾도록 한다. Forwarding `MAC addr`이 테..
네트워크를 배운 지 시간이 꽤 흘렀다. 허브, 브리지, 스위치, 라우터와 같은 장비들을 두루 뭉실하게 알고 있어 각 장비에 대해 명확히 정리하고 이해해보고자 한다. Hub 허브는 간단히 말하면, `디바이스와 디바이스를 네트워크로 연결해주는 장비`이다. 허브는 `멀티포트 리피터(Multiport Repeater)`의 기능을 수행하여, 서로 다른 디바이스를 네트워크로 연결할 수 있다. `멀티포트 리피터`는 단어의 의미를 하나씩 생각하면 이해하기 쉽다. 멀티 포트 : 허브 자체에 다수의 포트가 존재한다. 리피터 : 다른 디바이스들로 부터 받은 신호들을 증폭시킨다. 즉, 허브는 `멀티 포트`를 통해 각기 다른 디바이스 들을 물리적으로 연결할 수 있으며, `리피터`를 통해 받은 신호들을 증폭시켜주는 역할을 하는 ..