IT개발자

크롤링&스크래핑

Crawling STEP 1 - JSOUP 사용

★ 크롤링(Crawling) 웹 사이트 > 페이지를 탐색해서 내가 원하는 데이터를 수집하는 행동 a. 상대방이 나에게 DB권한을 준다면..? > 실질적으로 불가능 b. 상대방이 외부에 OpenAPI를 공개 > 일부 공개 > 무난한 방법 c. a(x), b(x) > 웹페이지의 소스를 가져와서 직접 원하는 데이터를 추출하는 방법 > 크롤링 크롤링 주의점! - 허가 문제, 저작권 문제 - 정도껏~ > 긁어오는 작업 > 프로그램 > 속도 빠름!! & 횟수 많음!! > 서버 부하 + 트래픽 발생 - 크롤링 금지 사이트(접속 불가능 처리) 크롤링 사전 지식 1. HTML 이해 2. CSS 이해, JavaScript 이해 3. 자바 기반 > 클라이언트 코드 파싱 라이브러리 ■ Jsoup 브라우저처럼 사이트 접속 > ..

백준 알고리즘

8. 일반 수학1 - 5 (2292번)

★ 문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. ★ 소스코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N = in.nextInt(); int count = 1; ..

웹페이지

CSS STEP 9 - 적용 예제

★ 아래와 같은 문서를 생성하시오. 조건 : 테이블을 구현하시오. 구현페이지 http://pinnpublic.dothome.co.kr/question/css/table_impl.html Document 10 Saepe 21 Voluptatibus Unde, aliquid Deleniti, quae mollitia pinnpublic.dothome.co.kr ■ 소스코드 Member list Table Design No Name Age ID Description 01 Lorem 21 Lorem Lorem ipsum dolor sit amet 02 Magni 22 Facere Obcaecati accusamus perspiciatis nesciunt corporis 03 Nam 23 Laudantium Ip..

데이터베이스

DATABASE SEMI PROJECT - MOVIE RANK DATA

★ MOVIE RANK DATA https://movie.naver.com/movie/sdb/rank/rmovie.naver 랭킹 : 네이버 영화 영화, 영화인, 예매, 박스오피스 랭킹 정보 제공 movie.naver.com 현재 네이버 영화에 있는 순위 목록을 크롤링 하여, 1. 개념적 모델링 2. 논리적 모델링 3. 물리적 모델링 4. DDL 생성 5. DML 생성 6. SELECT 검증 순으로 진행하였다. ■ STEP 1. 데이터 크롤링 현재 랭킹에 있는 정보와 영화 상세 정보들을 크롤링 하여 excel에 종합하였다. 컬럼은 총 21 컬럼으로, 1위 ~ 50위에 위치하는 영화들을 가져왔다. 1. 순위 2. 제목 3. 개봉년도 4. 관람객 평점 5. 평론가 평점 6. 네티즌 평점 7. 개요 8. 장르..

데이터베이스

DATABASE STEP 25 - PSEUDO

★ PSEUDO 의사 컬럼, Pseudo Column 실제 컬럼이 아닌데 컬럼처럼 행동하는 요소 rownum 오라클 전용 row num > 행번호 > 레코드의 일련번호 from 절이 실행될 때 각 레코드에 일련번호를 할당한다. where 절의 영향을 받으면 일련번호를 다시 정비한다. (reindexing) rownum을 사용 > 서브 쿼리를 자주 사용한다. ■ 사용 ex) ex1) rownum의 사용법 select name, buseo, -- 컬럼(속성) > output > 객체의 특성에 따라 다른 값을 가진다. (개인 데이터) sysdate, -- 함수 > output > 모든 레코드가 동일한 값을 가진다. (정적 데이터) substr(name,2), -- 함수 > input + output > 객체마..

데이터베이스

DATABASE STEP 24 - ALTER

★ DDL > Object 객체 생성 : create 객체 삭제 : drop 객체 수정 : alter ★ 테이블 수정하기 테이블 정의 수정 > 컬럼 수정 > 컬럼명 or 자료형(길이) or 제약사항 테이블 수정해야 하는 상황 발생!! 1. 테이블 삭제(drop) > 테이블 DDL(Create) 수정 > 수정된 DDL로 새롭게 테이블 생성 a. 기존 테이블 데이터가 없었을 경우 > 아무 문제 없음 b. 기존 테이블 데이터가 있었을 경우 > 미리 데이터 백업 > 테이블 삭제 > 수정 후 생성 > 데이터 복구 - 공부할 때 자주 사용 - 개발 중에 사용 - 서비스 운영 중 > 불가능 !! 2. alter 명령어 사용 > 기존 테이블 구조(컬럼 정의) 변경 a. 기존 테이블 데이터가 없었을 경우 > 아무 문제 ..

데이터베이스

DATABASE STEP 22 - VIEW

★ 데이터베이스 객체 테이블 계정(hr) 제약사항 시퀀스 뷰 ★ 뷰(View) 데이터베이스 객체 중 하나 가상 테이블, 뷰 테이블 등... 테이블처럼 사용한다. 뷰는 SQL을 저장한 객체이다. 뷰는 호출될때마다 저장된 SQL이 실행된다. (실시간 가상 테이블) 사용 양식 create view 뷰명 as select문; create [or replace] view 뷰명 as select문; ★ 뷰의 역할(목적) 쿼리를 단순화한다. > 가독성 향상 보안 관리 쿼리 > 다른 사용자(hr 등)과 공유 ■ 사용 ex 1) create or replace view vwInsa -- tblInsa 테이블의 복사본 as select * from tblInsa; select * from vwInsa; -- tblInsa..

데이터베이스

DATABASE STEP 11 - Date_Time_Function

★ Date_Time_Function (날짜 시간 함수) sysdate 현재 시스템의 시각을 반환 자바로 따지면, Calendar.getInstance() data sysdate months_between() : 시각 - 시각 = 시간(월) add_months() : 현재 일 수 에서 한달을 더하는 것 날짜 연산 1. 시각 - 시각 = 시간(일) 2. 시각 + 시간 = 시각 3. 시각 - 시간 = 시각 ★ 사용 예 1. 시각 - 시각 = 시간(일) select name, ibsadate, round(sysdate - ibsadate) as "근무일수", round((sysdate-ibsadate) / 365) as "근무년수", -- 사용 금지 round((sysdate-ibsadate) * 24) as..

IT의 큰손
'IT개발자' 태그의 글 목록