본문 바로가기

전체 글45

[Selenium] 에러 org.openqa.selenium.ElementClickInterceptedException (is not clickable at point. Other element would receive the click) webElement.driver.findElement(By.id("searchBtn")); webElement.click(); org.openqa.selenium.ElementClickInterceptedException: element click intercepted: Element ... is not clickable at point (1309, 322). Other element would receive the click: ... 상황: 조회btn(searchBtn)을 click()하지 못하는 에러 element는 찾은 상태이지만 searchBtn으로 focus가 가지 못하는 경우 발생하는 에러이다. 왜냐하면 조회버튼을 눌러야 하는데 datepicker가 닫히지 않은 상태로 진행되어서 조회 버튼에 .. 2023. 12. 11.
[Java] json파일(JSONObject, JSONArray) 읽어와서 db에 저장하기 JSONObject와 JSONArray를 오가며 다뤄야 한다. public void dbInsert() { try { // JDBC 연결 객체 생성 dbManager dbm = new dbManager("아이피주소", 포트번호, "db이름", "유저", "비번"); try { JSONParser parser = new JSONParser(); // json 파일 불러오기 FileReader rd = new FileReader("json파일 저장 경로"); Object obj = parser.parse(rd); // 전체 json 파일 불러오기 JSONObject jsonObject = (JSONObject) obj; // 하위 JSONArray 불러오기 JSONArray jsonArray = (JSONA.. 2023. 12. 7.
[PostgreSQL] 자바와 데이터 타입 매핑하기 & Postgresql → SQL 변환 PostgreSQL 데이터 타입 ↔ SQL 데이터 타입 ↔ 자바 데이터 타입 PostgreSQL Data Type SQL/JDBC Data Type Java Type bool BIT boolean bit BIT boolean int8 BIGINT long bigseiral BIGINT long oid BIGINT long bytea BINARY byte[] char CHAR String bpchar CHAR String numeric NUMERIC java.math.BigDecimal int4 INTEGER int serial INTEGER int int2 SMALLINT short smallserial SMALLINT short float4 REAL float float8 DOUBLE double mo.. 2023. 12. 7.
[Java] Reflection Reflection 구체적인 Class의 type을 모르더라도 해당 클래스의 정보(변수, 타입, 함수)에 접근하도록 하는 자바 API. 즉, 동적으로 Class의 정보를 바인딩(추출)하는 것이다. 사용 이유: 여러 곳에서 데이터를 크롤링하여 각자의 클래스 생성 → 각 클래스의 타입이 다르다. → 그러면 클래스마다 각 sql문을 생성하기 보단(비효율) 어떠한 타입의 클래스라도 처리할 수 있도록 하기 위해서 Reflection 사용. 스프링 어노테이션의 근간이 된다. 2023. 12. 6.
[Selenium] 자바 | WebDriverWait.until()와 ExpectedConditions WebDriverWait 웹 드라이버에 대기시간을 주는 객체 Selenium의 실행속도는 웹페이지 로딩 속도보다 빠르다. 때문에 element가 로딩될 때 까지 기다려야 하는 경우 사용한다. 예를 들어, 페이지 생성 버튼(더보기)을 누르기 위해 대기시간을 가져야 하는 경우 WebElement moreBtn = new WebDriverWait(driver, 10); 10초 대기 하겠다는 의미이다. WebDriverWait.until() 명시적 대기(Explict wait)라고 한다. moreBtn = new WebDriverWait(driver, 10) .until(ExpectedConditions.elementToBeClickable(driver.findElement(By.cssSelector(css)).. 2023. 12. 6.
[Selenium] 에러 org.openqa.selenium.WebDriverException: unknown error: result.webdrivervalue.value list is missing or empty in runtime.callfunctionon response 프로젝트의 크롬드라이버 버전과 내 컴퓨터의 크롬드라이버 버전이 일치하지 않는 경우 발생하는 에러. 해결 1. 자신의 크롬 드라이버 버전 확인. (chrome 설정에서 확인 가능) 2. 해당 크롬 드라이버 버전을 구글에 검색해서 다운로드 3. 작업관리자에서 백그라운드 프로세스 chromedriver 돌아가는 것을 다 작업끝내기 하고 4. 기존 프로젝트의 크롬 드라이버 삭제하고, 다운받은 드라이버를 프로젝트에 넣기. * CrawlerContainer에 Collect파일들을 복붙하고 실행할 때 위와 같이 에러가 발생하는 경우 작업관리자에서 chromedriver.exe 작업을 끝내고 버전확인하기 ( browerDrv파일의 chromedriver.exe 파일 삭제 CrawlerItems의 chromedriver.. 2023. 12. 5.
[GIS] 개발관련 GIS기초공부(12) - GPS와 좌표계(2) - 지구타원체, 좌표계 φ, λ, h) 2. 지구타원체 2.1. 측지기준 지형공간정보를 획득하기 위하여 실제 지구의 형상을 수학적으로 단순화시켜 기준좌표계를 설정 1979년도 IUGG에서 GRS80을 기준타원체로 발표. 2.2. 지구타원체 지오이드는 지구 내부를 구성하는 밀도분포에 따라 약간의 기복이 있음 (지오이드 = 등포텐셜면) 수학적으로 단순한 지구의 형상이 필요 지오이드 형상에 가까운 타원체 회전타원체의 크기는 자오선호장 또는 중력 측정에 의하여 결정되는 타원체의 장반경(a)과 편평률(f)로 정하여짐 (ellipsoidal parameter) 전체 지구 지오이드 형상에 가장 가까운 타원체 - 범지구타원체(WGS84, GRS80) 지역적 지오이드 형상에 가장 가까운 타원체 - 지역기준타원체(Bellel, Clarke, H.. 2023. 12. 4.
[GIS] 개발관련 GIS 기초공부(11) - GPS와 좌표계(1) 1. 지구의 실제 모습 1.1 지구의 형상 측지학적인 관점에서의 지구의 형상 실제 지구의 물리적 표면 : 육지, 해양 등 자연 상태의 지표면 지구타원체 : 기하학적, 수학적으로 간단한 기준면 지오이드 : 등포테셜면 수학적 지효면 : 텔룰로이드, 의사지오이드 지오이드란 위치E = 0 인 지점. 1.2. 지오이드 지구 표면의 약 70%는 해면, 해면은 조석 및 해류, 파랑(파도) 등에 의해 변화 조차(만조, 간조) 장시간의 평균을 취하여 정지한 면으로 가정 - 평균해면(평균해수면) 평균해면상에서 포텐셜(위치)은 일정 - 등포텐셜면 평균해면을 육지로 연장한 면 - 지오이드 (등포텐셜면, 포텐셜=0) ※ 지오이드 : 중력포텐셜면 중 평균해면에 일치하는 면 1.3. 지오이드 지오이드면은 어느 곳에서나 중력 방향에.. 2023. 12. 4.
[GIS] 개발관련 GIS 기초공부(10) - NGIS 10. NGIS 10.1. 국가 GIS 사업 - 지리정보를 생산·관리하는 국가기관, 지방자치단체 및 정부투자 기관이 구축하고 관리하는 지리정보시스템 - NGIS 사업의 주된 내용 종래 2차원 자료로 구축되고 활용되었던 수치지도를 3차원으로 변환 지자체 GIS database를 통합하여 통합 DB를 구축하는 방안 - 이와 관련하여 2011년 부터 4차 국가 GIS 기본계획을 수립하여 수행 - NGIS 사업은 초기에 재정경제원의 주관으로 추진되다가 1995년부터 건설교통부로 총괄책임이 이관 - 주요 참여기관으로는 건설교통부, 정보통신부, 과학기술부, 행정자치부 등 11개 정부 부처가 참가 10.2. 1,2차 NGIS 사업 구분 제1차 NGIS 기본계획 제2차 NGIS 기본계획 계획 기간 1995~2000년 .. 2023. 12. 1.