분류 전체보기

Python

[Python/Selenium] 네이버 로그인

Selenium version : 4.15.2 글 최종 작성일 : 2023-12-03 📍 과정이 있는 글이라 지름길은 '본론' 클릭 본 글은 📎메타코드M님의 유튜브 강의를 참고하여 쓴 글입니다. Selenium을 사용해서 네이버를 로그인해보겠다. Logic 아이디 입력 비밀번호 입력 로그인 버튼 클릭 전체 코드 * 네이버의 url이나 선택자는 변경될 수 있다. from selenium import webdriver from selenium.webdriver.common.by import By import time driver = webdriver.Chrome() # 네이버 로그인 URL 주소 driver.get("https://nid.naver.com/nidlogin.login?mode=form&url=..

Python/Error

[Python/Error] AttributeError: 'str' object has no attribute 'capabilities'

에러 메세지 셀레니움 소스를 실행하니 아래와 같은 에러가 발생했다. AttributeError: 'str' object has no attribute 'capabilities' 설명 셀레니움을 오랜만에 사용했는데 그새 또 문법이 바뀐 것 같다. 원래 소스 chromedriver를 별도로 다운로드 받아서 exe 파일이 있는 주소값을 인수로 전달해줬다. from selenium import webdriver driver = webdriver.Chrome("c://chromedriver.exe") 업데이트 후의 소스 이제는 chromedriver를 별도로 다운로드할 필요가 없고 exe 파일 주소 인수를 전달하지 않는다. from selenium import webdriver driver = webdriver...

활동

구름톤 챌린지

구름톤 챌린지 구름LEVEL 알고리즘 먼데이 챌린지가 구름톤 챌린지로 새롭게 찾아왔습니다. 온라인 알고리즘 문제 풀이와 오프라인 팀 챌린지를 모두 즐길 수 있는 구름톤 챌린지와 4주 동안 매일 꾸준히 성장 9oormthonchallenge.oopy.io 요즘 부트캠프 코딩테스트반에 들어가서 코테 공부를 하고 있었다. 그 과정에서 구름 IDE를 쓰고 있었는데 우연히 SNS에서 '구름톤 챌린지'를 한다는 것을 알게 되었다. 정말 다행스럽게도 구름톤 챌린지를 시작일(08/14)에 딱 알게 된 것이다. 그래서 부랴부랴 참여하게 되었다 😎 매일 오전 10시 딱 1문제만 푸는 건데 평일만 진행된다. 4주동안 구현, 완전 탐색, 탐색&동적 프로그래밍, 그래프 순으로 진행된다. 1 week (08/14 - 08/20)..

코딩테스트

[코테/구름톤챌린지] 구름톤 챌린지 1주차 학습 일기 - 2일차 미션 (프로젝트 매니징)

문제 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 내 풀이(Python3) N = int(input()) T, M = map(int, input().split()) time = 0 for i in range(N): time += int(input()) # 시간 hour = time // 60 if hour >= 24: hour %= 24 #분 minute = time % 60 T += hour M += minute if M >= 60: T += 1 M -= 60 if T >= 24: T -= 24 print(T, M) time 변수에 더해야할 분수를 저장했다. 시간(hour)을 구하기 위해 60을 나누고 만약 hour가 24보다 큰 경우..

코딩테스트

[코테/구름톤챌린지] 구름톤 챌린지 1주차 학습 일기 - 1일차 미션 (운동 중독 플레이어)

문제 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 내 풀이 (Python3) 내용적으로 봤을 땐 어려워 보였는데 결론적으로 수식대로 코드를 짜고 소수점 이하의 값을 버리면 되는 문제였다. W, R = map(int, input().split()) RM = int(W *(1+R/30)) print(RM) 소수점 이하의 값을 버리기 위해 int() 함수를 사용해서 정수로 만들어 주었다. 구름톤 해설 구름톤 해설에서는 Math 라이브러리의 trunc() 함수를 사용하여 소수점 이하의 값을 버렸다. import math math.trunc(W *(1+R/30)) 배운 점 정해코드를 통해 trunc() 함수에 대해 처음 알게 되었다. 소수점을 다..

Frontend

[FE/Bootstrap] 테이블의 행이 길어질 때 글 줄이기(...)

화면의 크기에 따라 테이블의 행 내용을 ...으로 줄여보자. HTML 제목 작성자 작성일 길어지는 제목을 줄여보겠습니다. 여기를 보세요! 관리자 2023-07-30 table에 table-layout: fixed; 스타일을 준다. 글자를 줄이고자 하는 곳에 class="text-ellipsis"을 추가한다. CSS .text-ellipsis { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } 결과물 Ref. 1. stackoverflow / https://stackoverflow.com/questions/22044194/sized-table-with-at-most-one-line-of-content-per-cell-with-bootst..

Backend

[BE/JSTL] 날짜 format

JSTL에서 날짜 형식을 바꿀 수 있다. jsp 파일 상단에 추가한다.

Backend/Spring

[Spring] 프로젝트 구조

src/main/java : 작성되는 코드의 경로 src/main/resources : 실행할 때 참고하는 기본 경로 (주로 설정 파일들을 넣음) src/test/java : 테스트 코드를 넣는 경로 src/test/resources : 테스트 관련 설정 파일 보관 경로 servlet-context.xml : 웹과 관련된 스프링 설정 파일 root-context.xml 스프링 설정 파일. 객체를 생성하고 관리해야 하는 객체들에 대한 설정을 포함 views : 템플릿 프로젝트의 jsp 파일 경로 web.xml : Tomcat의 web.xml 파일 pom.xml : Maven이 사용하는 pom.xml