파이썬은 pandas 라이브러리를 활용하여, html 중에서 표만 추출하여 2차원 배열로 추출하는 함수를 제공한다.(엄청 편함)

 

준비단계 -----------------------------------------------

실제 해당하는 라이브러리는 내장되어 있지 않아 설치가 필요함

pip install pandas
pip install lxml
pip install html5lib
pip install BeautifulSoup4
pip install openpyl

---------------------------------------------------------
pip를 업그레이드가 필요한 경우
python -m pip install --upgrade pip
---------------------------------------------------------
WindowOS 10 인 경우, 직접 lxml 라이브러리를 다운받아 설치 필요
https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml |
사이트에 접속해서 자기 OS에 맞는 lxml을 다운받고, Python Shell에서 ‘pip install 다운받은파일.whl’ 실행

import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table")
print(df) # HTML 내용중 테이블 형태의 데이터를 실시간 추출함.
import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
print(df[1]) # 헤더를 열이름으로 정하고, 나라이름을 인덱스로 정함
import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
print(df[1].iloc[:, :5]) # 데이터의 앞에 5개만 추출

iloc 인덱스 방식 : 데이터의 순서에 따라 접근하는 것으로, 콤마를 중심으로 앞은 행, 뒤는 열에 접근하는 것. 따라서 iloc[:, :5]는 모든 행의 앞의 5개 열을 슬라이싱하라는 의미

import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
# print(df[1])
# print(df[1].iloc[:,:5]) # 모든 행의 처음부터 5개열..
summer=df[1].iloc[:,:5]
summer.columns=['경기수', '금','은','동', '계'] # 표의 컬럼 이름 정의
print(summer.sort_values('금', ascending=False)) # ‘금’ 숫자를 기준으로 정렬
summer.to_excel(‘하계올림픽메달.xlsx’) # 엑셀 파일로 저장(단 한줄)

pandas(panel datas, 패널자료)에 대해 알기 전, 1차원 배열 형태의 데이터 구조를 Series라고 부르고, 2차원 배열 형태의 데이터 구조를 DataFrame이라고 부른다. 파이썬에서는 numpy, pandas 같은 라이브러리를 활용하면 효율적이고 전문적인 데이터 분석을할 수 있다..

# pandas 연습하기

import pandas as pd
import numpy as np


index= pd.date_range('1/1/2000', periods=8)
print(index)
df = pd.DataFrame(np.random.rand(8,3), index=index, columns=list('ABC'))
print(df)
print(df[‘B’])
print(df['B'] > 0.4) # 0.4 보다 큰지 여부를 True / False로 표기
df04 = df[df['B'] > 0.4] # 특정값 이상만 배열에 담기
print(df04)
df['Total'] = df.sum(axis=1); # 합계 열 추가
df = df.sub(df['A'], axis=0) # A열을 빼기, A열은 모두 0으로 표기
df = df.div(df['C'], axis=0) # C열의 값으로 나누기
del df['E'], df['D'] # ‘E’,‘D’열 삭제
print(df.head()) # DataFrame의 첫5행만 확인
df.to_csv('test.cvs') # CSV 파일로 저장하기.
df = pd.read_csv(‘test.csv’, encoding=’cp949’ , index_col=0) # csv 파일 읽기
print(df.head())

- 데이터 프레임 행 우선 계산과 열 우선 계산

기본적으로 테이블(DataFrame)은 행우선(axis =0)으로, 열 방향으로 계산한다면, axis1로 변경해야 한다.

합계열을 추가하려면, df[‘E’] = np.sum(df, axis=1)를 실행하면 된다.

a = df.index.str.contains(name) # name변수를 포함한 index를 검색하여 행을 리턴

df2 = df[a] # 해당인덱스의 행전체 값을 저장

위의 내용대로, pandas의 read_html() 함수를 사용해서 테이블 형태의 자료를 추출한 후, 파일로 주기적 생성후, 주기적으로 개발자가 선호하는 언어(Java, PHP 등)로 DB에 넣어서 사용하면, 쉽게 크롤링을 할 수 있을 것 같다.

위 내용은 "모두의 데이터 분석 with 파이썬" 책을 읽으며 요약한 것으로, 개발자 기준에서 특징적인 것만 요약한 것이다.

다음에는 크롤링이라 명시된 책으로 정말 그외 특별한 무언가가 있는지.. 아니면 지금 이것을 활용하는 것뿐인 것인지 확인해 보자.

Posted by 목표를 가지고 달린다
,

코딩의 진정한 고수란 누구인가?

 

IT개발자가 일을 잘 한다는 것은 무엇일까?

국가 정보시스템 감리에서는 사업(일)을 할 때,

기능성(내용이 충분하고 완전함), 무결성(내용이 정확함), 편의성(이해 및 활용의 편의), 안정성(테스트 결과서), 보안성, 효율성(성능향상), 준거성, 일괄성을 요구한다.

쓸데 없이 기교를 부리거나, 도전의식으로 새로운 것(익숙치 않거나 이용하기 어려운 라이브러리 등)을 행하는 것은 업무에 중요하지 않다.

개발을 할때, 업무 요건와 프로세스를 단순화하여 개발 및 유지보수가 용이하게 설계한 후,
적절하게 DB의 SQL문과 AP의 Coding에서 기능을 구현하는 것이 개발자의 능력의 척도이다.

어줍잖은 실력으로 오라클의 통계함수나 rollup, cube 등을 쓰는 것보다 때로는 union 으로 2번 읽는 것이 유지보수가 쉽고 남들도 해당 업무 파악이 쉬울 수도 있다.(물론 약간의 성능저하는 있을 수 있으나, 거래가 많지 않다면 무시)

그렇다고 무식하게 코딩하라는 것이 아니다.

적절하게 기술을 발휘하라는 말이다.

 

 

Posted by 목표를 가지고 달린다
,

주변에 일반 업무부서에서 일하고 있지만, 오너의 크롤링에 대한 관심으로....

파이선을 공부하려고 책을 사본 친구가 있어서 빌려서 읽어 봤다.

IT 전공자에게는 2~3시간 동안(200page) 눈으로 스캔하는 수준으로.
기초적인 문법 사용 { }의 개념, if, for문 특징..정도 인것 같다...

이책은 정말 입문자용으로 IT전공자가 아닌 일반인이 접하기에는 매우 좋은 책인 것 같다..

설명이나, 개념에 대해서는 차근차근 설명하고 있고,
샘플소스 역시 난이도가 어렵지 않고 실속있게 개념 잡기 좋은 걸 잘 골라서 진도를 뽑고 있다.

IT전공자는 좀더 실무적으로 크롤링과 관련된 책을 골라서 읽어보길 권합니다.

Posted by 목표를 가지고 달린다
,

★2020년 시험과목 변경사항 안내

국가기술자격법 시행규칙 개정('18.6.22)*에 따라 해당 종목의 필기, 실기시험 과목이 2020년부터 아래와 같이 시행 예정

구 분 현 행 변 경(2020년 적용) 비고
시험과목 필기시험 1. 데이터베이스
2. 전자계산기구조
3. 운영체제
4. 소프트웨어공학
5. 데이터통신
1. 소프트웨어 설계
2. 소프트웨어 개발
3. 데이터베이스 구축
4. 프로그래밍 언어 활용
5. 정보시스템 구축관리
국가직무능력표준(NCS)을 활용하여 현장직무중심으로 개편
실기시험 정보처리 실무 변경없음

* 국가법령정보센터(www.law.go.kr)→국가기술자격법 시행규칙(고용노동부령 제222호)→별표/서식→별표8 참조

전공자는 크게 상관없을 수 있으나, 공무원 시험을 대비하는 수험생분들은 ... 기존 Dump 기반에서 추후 업데이트 되는 시험문제를 확인하고 접근하는게 시간을 효율적으로 이용하는 방법으로 예상됨.

https://www.comcbt.com/xe/j4

정보처리기사 필기 기출문제 - 최강 자격증 기출문제 전자문제집 CBT

정보처리기사 필기 기출문제

www.comcbt.com

http://www.gunsys.com/cbt_list/index.php?cbt=gisa

정보처리기사 필기 기출문제 모의고사, CBT

www.gunsys.com

많은 CBT 관련 사이트가 있으나, 그중에 2개를 소개해드립니다.~

Posted by 목표를 가지고 달린다
,

정보시스템을 모두 인소싱하는 것은 어렵고, 비용이 상당하다.

제한된 자원내에 우리는 효율적이고 더 신뢰할 수 있는 제3자에게 아웃소싱을 하고, 그과정에서 R/R을 명확하게 하기 위한 SLA를 체결하게 된다. 이부분은 서비스를 받는 자가 제대로 챙기지 못하면 문제가 발생했을 때, 생각치 못한 부분까지 책임을 떠안아야 하기에 반드시 읽고, 고민하자.

그리고 운영아웃소싱을 맡기더라도, 결국 문제 발생시 담당자도 문책을 피하기 어려우니, 맡긴 업무를 어떻게 감독/관리할 것인가에 대해 고민이 필요하다.

11. 정보시스템 운영아웃소싱 관리지침.PDF
2.86MB
12. SLA를 강화한 정보시스템 운영계약참조모델.PDF
1.68MB

Posted by 목표를 가지고 달린다
,

IT관리자가 반드시 읽어봐야 할 문서(지침)

NIA 한국정보화진흥원
HOME > 지식정보 > 기타자료집 > 법령 및 사업 관련규정

을 참조하면, 아래의 운영지침을 확인할 수있다. 14년 전에 발간되었다지만, 실제 내용의 큰차이는 없다.
개인정보보호법이 나오고, 일부 개정되면서 디테일한 부분이 수정이 있으나,
이제 관리자를 준비하는 사람, IT를 시작하는 사람은 전체적으로 읽어봐야할 자료들이다.

01. 정보시스템 운영관리 지침개요서.PDF
1.90MB
02. 정보시스템 운영관리 지침.PDF
2.60MB
03. 정보시스템 구성및변경관리지침.PDF
3.19MB
04. 정보시스템 운영상태관리지침.PDF
2.40MB
05. 정보시스템 성능관리지침.PDF
7.31MB
06. 정보시스템 장애관리지침.PDF
4.33MB
07. 정보시스템 재해복구지침.PDF
4.00MB
08. 정보시스템 백업지침.PDF
3.11MB
09. 서비스데스크 운영관리지침.PDF
4.11MB
10. 전산실 관리지침.PDF
2.02MB

그외 2개의 자료가 있는데, 아웃소싱관리지침과 SLA와 관련된 것으로,
전산실 운영 및 계약자는 반드시 숙지하고 업무를 해야 한다.

2019/09/22 - [반갑습니다. 신입님] - 정보시스템 운영관리 매뉴얼2(NIA 제공)

Posted by 목표를 가지고 달린다
,

제로페이는 소상공인들의 어려움(카드 수수료)을 덜어주고자 서울시에서 만든 결제수단이지만,

제로페이는사용자에게도 소득공제가 되는 유용한 제도이다.

또한, 구매시 10%정도 할인해서 판매하기에 할인 + 절세 효과가 높다.

신용카드, 체크(직불)카드, 현금영수증 등 결제 수단별로 소득공제를 지원하고 있다는 것은 모두 잘 아는 사실이죠? 모두 아시다시피 신용카드의 공제율은 15%, 체크(직불)카드와 현금영수증은 30% 공제율을 적용해 공제를 받을 수 있는데요, 제로페이 공제율은 40%다.

연말정산 공제한도가 300만 원으로 제한되어 있는 것도 걱정할 필요가 없다. 전통시장, 대중교통, 도서·공연·박물관·미술관 사용분 각각 100만 원씩 추가로 공제가 가능하다. 그렇다면 제로페이는? 제로페이 역시 기본공제한도인 300만 원에 전통시장 사용분과 함께 100만원까지, 총 400만 원 한도에서 추가 공제가 인정된다.

항목 한도추가
전통시장, 제로페이 100만원
대중교통 100만원
도서.공연.박물관.미술관 100만원

 

총급여액이 5,000만 원인 A씨가 총급여액의 25%인 1,250만 원을 신용카드로 사용하고 1,000만 원을 제로페이로 사용했을 경우 연말정산 환급을 얼마나 더 받을지 보자.

예)

구분
(공제율)
신용카드 1,250/제로페이1,000만 원을 사용하는 직장인 A씨
소비액(A) 총급여25% (B) 공제대상(C=A-B) 소득공제액 (D=Cx공제율) 세금혜택 (Dx15%)
2,250 1,250 1,000 400 60
신용카드 1,250 1,250 - -
제로페이 1,000 - 1,000 400
구분
(공제율)
신용카드로만 2,250만 원을 사용하는 직장인 A씨
소비액(A) 총급여25% (B) 공제대상(C=A-B) 소득공제액 (D=Cx공제율) 세금혜택 (Dx15%)
2,250 1,250 1,000 150 23
신용카드 2,250 1,250 1,000 150
제로페이 - - - -

예시된 표만 확인해도 제로페이를 함께 사용했을 때 연말정산 환급액이 무려 37만 원이나 더 높다.!!!

지금부터 결제할때, 제로페이로 일부 지출하는 습관을 들이자.!!!

생활의 작은 습관으로 절세가 답이다.

PS. 지자체에서 운영하는 대공원, 전용주차장 등 일부 시설에서 할인혜택도 있습니다.

Posted by 목표를 가지고 달린다
,
1. 여러개의 가상 데스크톱 운영관리 : [Win+Ctrl+D]
2. 프로그램 실행 단축키 : [Win+상단숫자(1, 2, 3...)]
3. 탭이동 : Ctrl+Tab/Ctrl+Shift+Tab, Ctrl+Page Up/Page Down
4. 활성화된 화면만 스크린캡쳐, 켭쳐 & 자동저장(내PC>사진>스크린샷) : Alt+Print Screen, Win+Print Screen
5. 창분할, 최대화(전체화면에서 2개프로그램을 정렬시 유용) : Win + 방향키(→←↑↓)

지난 5월 마이크로소프트 사는 기업 사용자 약 2억 명이 윈도우 10을 사용하고 있으며, 세계 윈도우 10 기반 디바이스의 수가 7억 대 이상이라고 밝혔다. 이처럼 현재 많은 사람이 마이크로소프트 윈도우를 기본 OS로 사용하고 있다. 특히 윈도우 10의 업데이트가 이루어지면서 인터페이스 변화와 동시에 Microsoft Edge 등 사용자 편의를 위한 다양한 기능이 추가되기도 했다. 하지만 제공되는 단축키가 너무 많다 보니 사용하지 않는 단축키도 허다하다. 윈도우 사용자들을 위해 단순하지만, 업무 속도를 올려주는 유용한 윈도우 기능과 단축키 다섯 가지를 소개한다.

업무 여러 개를 동시에 진행하다 보면, 열어 놓은 창이 많아 업무가 섞여 효율이 떨어질 수 있다. 이럴 때는 [Win+Ctrl+D] 단축키를 눌러 새 윈도우 창을 열어 사용하면 된다. 이 가상 데스크톱 기능을 활용하면 마치 컴퓨터가 여러 개인 것처럼 업무를 분리하여 진행할 수 있다. 윈도우 창 삭제는 [Win+Ctrl+F4] 단축키, 업무 중 윈도우 창 사이의 이동은 [Win+Ctrl+방향키(←,→)] 단축키로 가능하다. 만약 단축키 사용이 불편하다면 [Win+Tab] 단축키를 눌러 마우스로 가상 데스크톱을 관리하면 된다.

창이 많이 열려있을 때 한 번에 바탕화면으로 이동하고 싶다면 어떻게 해야 할까. 작업표시줄의 가장 오른쪽 끝에 있는 네모 상자를 클릭하면 바탕화면으로 바로 이동된다. 단축키를 이용하고 싶다면 [Win+D]를 통해 바탕화면으로 이동할 수 있다. [Win+,] 단축키는 단축키를 누르고 있는 동안만 바탕화면 상태를 유지해준다.

윈도우를 사용하는 사람 대부분은 자주 사용하는 프로그램을 작업표시줄에 추가해놓고 사용한다. 이때 단축키를 이용해 작업표시줄에 추가된 프로그램을 빠르게 실행시킬 수 있다. 작업표시줄에 추가된 순서대로 [Win+상단숫자(1, 2, 3...)] 단축키를 누르면 실행된다.

또한 필요한 자료를 검색하다 보면 탭을 많이 열어놓고 사용하게 되는데, 이때 단축키를 통해 효율적으로 탭을 관리하는 것이 가능하다. [Ctrl+T] 단축키로 새 탭을 열고, [Ctrl+W]로 보고 있는 탭을 닫을 수 있다. 만약 실수로 계속 봐야 하는 탭을 닫아버렸다면 [Ctrl+Shift+T] 단축키를 사용하자. [Ctrl+Shift+T] 단축키를 누르면 최근에 닫은 탭 순서로 다시 탭이 켜진다. 탭을 이동할 때는 [Ctrl+Tab] 단축키(오른쪽 탭으로 이동), [Ctrl+Shift+Tab] 단축키(왼쪽 탭으로 이동)를 활용하면 편리하다. [Ctrl+Page Up/Page Down] 단축키를 통해서도 탭을 이동할 수 있으니 본인에게 편한 방식으로 사용하면 된다.

화면 캡처가 필요한 많은 경우에 화면 전체를 복사해주는 Print Screen(Prt Sc) 키가 사용된다. 이때 Alt, Win 키를 함께 사용해주면 더 효율적으로 캡처 기능을 활용할 수 있다. [Alt+Print Screen] 단축키는 화면 전체가 아닌 활성화 되어있는 창만을 복사해주며, [Win+Print Screen] 단축키는 화면 전체를 복사한 후 바로 저장해준다.

이 외에도 윈도우 키와 방향키를 함께 눌러 창을 분할, 최대화하는 등 다양한 기능이 존재한다. 본인이 자주 사용하는 기능의 단축키를 미리 익혀둔다면, 업무 효율을 높일 수 있다.

업무효율은 의외로 단순하지만, 몸에 벤 작은 습관들로 올라가는 경우가 많다. 이 다섯가지를 익힌다면 최소한 10~20% 이상의 효율 및 편의를 느낄 수 있을 것이다.

일단 해보자.

Posted by 목표를 가지고 달린다
,