2015년 12월 30일 수요일

구글 API 서비스 사용 퀵가이드

구글의 어마무시한 서비스 API를 사용하는 퀵가이드를 다룬다. 요약하면 다음과 같다. 1. 관리 콘솔을 통한 인증 정보 발급 받기 2. 프로그램 언어 및 사용 방법에 따른 인증 3. 서비스 API 사용 가이드에 따른 개발 Google Developer Console 구글 개발을 위한 관리 콘솔 1. 프로젝트 생성 2. 사용자 인증 정보 생성 API 키  - API 호출시 사용할 토큰을 발급한다. OAuth 2.0 클라이언트 ID  - 인증 정보가 있는 client_secrets.json을...

2015년 12월 29일 화요일

파이썬 단순 문장 표현 정리

파이썬에서는 싱글 라인에 로직을 구현하는 단순 문장 표현을 제공한다. 본문은 원문 가이드 내용 중에 부가 설명이 필요한 부분을 다룬다. Simple statements 단순함을 지향하는 파이썬을 더욱 단순하게 만들어 주는 한 줄 코드에 대한 내용이다. Assignment statements 어싸인 문장을 통해서 로직을 쉽게 표현 할 수 있다. # 교환 로직 temp = a  a = b b = temp =>  a, b = b,...

파이썬 PostgreSQL 라이브러리 py-postgresql 퀵 가이드

PostgreSQL을 사용 위해서 psycopg2 라이브러리 구성시 pg_config가 필요한 이유로 패키지를 추가 설치하는 불편함이 있었다. 본문은 (신속하고 편리한 사용을 위해)  py-postgresql 라이브러리로 작업하는 샘플을 요약한다. py-postgresql 사용 간단한 설치 방법이다. pip install py-postgresql 문서에서 제공되는 메인 예제이다. import postgresql 

db = postgresql.open("pq://user:password@host/name_of_database")
 db.execute("CREATE...

2015년 12월 23일 수요일

이베이 API 시작 가이드

전번 아마존(amazon) API 관련 블로그에 이어 이베이(ebay)를 다룬다. 본글은 이베이(ebay) API 사용을 위한 퀵가이드를 제공한다. API 사용 방법은 다음과 같다. 1. 서비스 및 개발자 계정 생성 이베이 : ebay.com, developer.ebay.com 페이팔 : paypal.com, developer.paypal.com 2. API 테스트를 위한 환경에 대한 이해  - Sandbox : API 테스트를 위해 만든 가상의 환경이다.  -...

2015년 12월 22일 화요일

파이썬 데코레이터(@ : decorator) 요약

먼저 Python의 Decorator를 알아 보자.  - Function, Method 그리고 Class 정의를 수정하기 위해 사용되어 지는 일종의 호출이다.  - 원조 오브젝트를 가지고 수정된 오브젝트를 반환한다.  - 자바의 Annotations에서 영감을 받았으며, 유사한 Syntax 를 가지고 있다.  - “@“ 예약 문자를 통해 문법적인 편의를 제공한다. 용도는 데코레이터를 통해서 정의될 객체의 꾸밈을 할 수 있다는 것이 포인트이다. 본문은...

2015년 12월 18일 금요일

동네 예보 좌표 변환용 C 코드 변환

공공 데이터(동네 예보) 개발 가이드에 보면 위/경도 좌표를 격자 좌표로 변환 하는 C 코드가 있다. 바이너리로 만들어 subprocess로 호출 해서 해도 되지만 OS 환경에 따라 빌드해야 하는 번거로움이 있다. 이에, 파이썬 코드로 변환했다. 변환 과정에서 주의 사항은 다음과 같다. math.pow()의 경우 결과를 float 타입으로 변경하는 과정이 있고, 여기서 복소수 같은 복합 연산 결과를 만났을때, 에러를 일으킬 수 있다. So, 기본적으로 제공하는 pow 함수를 사용하면,...

아마존 MWS 개발 참고 사항 - API 시작 가이드

IT를 선도하는 기업답게 가이드가 매우 상세하다. 다만 방대한 가이드로 인해서 (번역 안된) 원하는 자료를 속독 하는 것이 쉽지 않다. 본문은 아마존(Amazon) API에 접근 하기 위한 퀵가이드 제공을 목표로 한다. 먼저 아마존 API 두 가지이다. 아마존 MWS  - 아마존 셀러를 위한 통합 웹 서비스 API이다.  - 셀러는 프로그램을 통해서 효율적인 관리가 가능하다.  - API 정보 https://developer.amazonservices.com 필수...

아마존 MWS 개발 참고 사항 - 주요 요소

일반 쇼핑몰과 다르게 아마존을 사용 할 때 판매자가 알아야 할 주요 사항을 다룬다. 아마존(Amazon) MWS로 어플리케이션을 개발 할 때 꼭 이해해야 할 내용이다. 상품 등록을 위해서는 상품 코드가 필요하다.  - UPC (Universal Product Code) : 미국에서 개발된 12자리 상품 바코딩 표준  - EAN (European Article Number) : 표준 단체 GS1이 정의한 13자리 상품 바코딩 표준  - 한국은 EAN에 국가코드...

2015년 12월 15일 화요일

아파치 WSGI 모듈(mod_wsgi)을 통한 Flask 연동

아파치(apache)의 WSGI 모듈(mod_wsgi)을 통해서 Flask를 연동하는 예제이다. 본문은 다음의 가이드에 대한 요약 및 보충 내용을 다룬다. http://flask-docs-kr.readthedocs.org/ko/latest/deploying/mod_wsgi.html 설치 1. 아파치를 설치한다.  --with-python=<path/python>  --with-apxs=<path/apxs> * apxs(APache eXtenSion tool) : 확장 모듈을 설치를 위한 도구 2. WSGI 모듈(mod_wsgi)를 설치한다. pip...

SQLite3에 대한 이점 및 사용 예제

파이썬에 기본으로 탑재되어 있는 SQLite3 에 대해서 다룬다. SQLite는 가벼운 디스크 기반의 데이터 베이스를 제공하는 C 라이브러리다. 어플리케이션 내부 데이터 저장소로 다양하게 활용되고, 사용이 간편하고 가벼워서 프로토타입용으로도 자주 쓰인다. 본문은 pandas + SQLite3에 대한 간략한 사용 예제를 담는다. 1. CSV 자료를 판다곰의 데이터프레임(DataFrame)으로 읽는다. df = pd.read_csv('gov_loc.csv',skiprows=1,index_col=['lev1','lev2','lev3'],              ...

2015년 12월 5일 토요일

python을 위한 IDE 도구 Pycharm 소개

맥북(Mac)을 사용하고, 데이터 분석을 위해 Python을 접했다면, 보통의 경우 vim과 ipython notebook을 자주 사용한다. Django나 Flask 같은 복잡한 (웹) 어플리케이션 개발의 길로 들어 선다면, IDE 도구가 필요하다. * IDE (Integrated Development Environment : 통합 개발 환경 ) 본문에서는 Pycharm 이라는 IDE 도구가 주는 즐거움을 소개한다. 1. xml과 xsd 사용 편의 xml 을 작성 할때, xsd를 기반으로 요소 목록 제공 및 규칙 검사를 자동 수행한다. 2. 손쉬운 virtualenv 환경 구성 python의 버전이...

파이썬 문서화 방법과 도구

파이썬(Python) 문서화를 위한 방법과 도구를 알아 본다. 먼저 문서화 방법이다. 다양성 보다는 간결성을 추구하는 파이썬의 철학처럼, 규칙에 따른 주석 만으로 문서화 할 수 있다. PEP 257 ( Docstoring Convension : 문서화 규칙) 을 바탕으로 주석을 다는 좋은 습관 만으로 충분하다. 기능 상자(모듈, 함수, 클래스, 메소드)의 첫번째 문장 주석은 __doc__ 라는 특별한 속성이 된다. 이 속성을 통해서 기능별로 구조화된 문서를 자동 생성할 수 있다. 다음은 문서화 도구이다. 자동 문서화 도구로 자주 언급 되는 Pydoc과 Sphinx를 비교한다. Pydoc 정말...

2015년 12월 2일 수요일

미들웨어 소프트웨어 RabbitMQ 요약

AMQP (Advanced Message Queuing Protocol)는 메세지 기반의 미들웨어(Middleware)를 위한 표준 어플리케이션 레이어 프로토콜이다. RabbitMQ는 AMQP를 수행하는 오픈소스 미들웨어 소프트웨어이다. 본문은 RabbitMQ 가이드를 기반으로 AMQP의 이해와 설치 팁을 다룬다. AMQP의 주요 요소 브로커(Broker) 생산자(Publishers/Producers)로 부터 메세지를 받아서, 소비자(Consumers/Subscriber)에게...