Data Analysis for Investment & Control
Python 기반 MySQL 연동하기 본문
이 포스트는 개인적으로 Python을 공부하는 과정에서 추후 리마인드를 위해 작성합니다.
다운로드 사이트에서 설치된 Python 버전과 OS를 확인하여 적당한 것을 받아 설치한다. 나는 Windows 10 64bit에 Python 2.7 버전이 설치되어 있으므로 해당 버전을 다운 받아 설치한다.
설치가 되면 위와 같이 site-packages 리스트에 MySQL 항목이 생긴다.
이제 Python 코드에 대해 알아보도록 하자.
MySQL에 연동하기 위한 Python 예제는 위의 링크의 Coding Example(Connecting to MySQL Using Connector/Python)에서 찾아 볼 수 있다. 여기서는 이를 기반으로하여 AWS에 설정해둔 RDS - MySQL 서버에 접속하여 데이터를 얻어오는 것을 구현하려고 한다.
from __future__ import print_function
import mysql.connector
from mysql.connector import errorcode
cnx = mysql.connector.connect(user='admin',
password='xxxxxxx',
host='db-xxxxxx.xxxxxxxxxxxx.ap-northeast-2.rds.amazonaws.com',
database='prometheus',
port=3306)
cursor = cnx.cursor()
query = "SELECT Date, StockPrice, ExchangeVolume FROM TableName;"
cursor.execute(query)
for (Date, StockPrice, ExchangeVolume) in cursor:
print("{:%d %b %Y} Price = {}, Volume = {}".format(
Date, StockPrice, ExchangeVolume))
cursor.close()
cnx.close()
코드가 수행되면 위와 같이 날짜, 주가, 거래량 정보가 순차적으로 출력됨을 알 수 있으며 DB 연동과 쿼리가 제대로 동작한다는 것이 검증되었다.
이 밖에 Table의 생성, Table에 데이터 Insert 하기 등의 동작은 위 링크의 Code Example을 참조하도록 하자. 여기서는 Python을 통해 MySQL DB 서버에 접속 및 기본적인 동작이 이루어 지는 것에 대한 설명을 한 것으로 포스팅을 마무리 하려고 한다.
몇 차례에 걸쳐 Python을 이용한 코딩과 활용에 대해 알아보았다. 원래 웹 크롤링을 해보려고 시작은 했지만 회사일이 바쁘다는 핑계로 2주 가까이나 지났음에도 불구하고 아직 자연어 처리나 스케줄링에 관한 내용은 진행 중이다.
다음에 Python 관련 포스팅은 이런 것들이 어느정도 진행 완료가 되어 실제 웹 크롤링 서버가 동작이 되면 차차 정리할 예정이다.
(내용이 마음에 드셨다면 아래의 '공감' 버튼을 눌러주세요^^)
'Code > Python' 카테고리의 다른 글
Python 클래스로 프로그래밍 하기 (0) | 2016.06.23 |
---|---|
Python을 이용한 웹 크롤링 - HTMLParser를 이용한 링크 추출 (0) | 2016.06.21 |
BeautifulSoup4를 이용한 크롤링 준비하기 (3) | 2016.06.19 |
Python 에디터 PyCharm 설치 (0) | 2016.06.19 |
Python 개발환경 설정 (2) | 2016.06.19 |