[파이썬] 파이썬을_이용하여_CSV를_DB에_불러오기

최대 1 분 소요

#02 파이썬을_이용하여_CSV를_DB에_불러오기


#!/usr/bin/env python
# coding: utf-8
get_ipython().system(' pip3 install pymysql')

## 버스 정류장별 승하차 인원 정보
# - https://data.seoul.go.kr/dataList/OA-12913/S/1/datasetView.do
# 파이썬에서 mysql 계열 디비를 접속하기 위한 모듈

import pymysql

# 디비 처리 모듈
from sqlalchemy import create_engine

# 디비에 넣기 위해 데이터를 조작, 추가, 분석을 위한 모듈 (pandas)
import pandas.io.sql as pSql
import pandas as pd

# csv 파일 로드
df = pd.read_csv('/home/it-5c/mysql/2019_bus_updown.csv', encoding='euc-kr') 

# 현재 데이터 컬럼명 확인
df.columns  

# 신규 컬럼명 정의
new_cols = ['use_yyyymm', 'route_ID', 'route_num', 'route_name',
'bus_stop_ID', 'bus_stop_ARS_num', 'station_ID', 'station_name',
'pa_up_00', 'pa_down_00','pa_up_01', 'pa_down_01','pa_up_02', 'pa_down_02','pa_up_03', 'pa_down_03','pa_up_04', 'pa_down_04','pa_up_05', 'pa_down_05','pa_up_06', 'pa_down_06',
'pa_up_07', 'pa_down_07','pa_up_08', 'pa_down_08','pa_up_09', 'pa_down_09','pa_up_10', 'pa_down_10','pa_up_11', 'pa_down_11',
'pa_up_12', 'pa_down_12','pa_up_13', 'pa_down_13','pa_up_14', 'pa_down_14','pa_up_15', 'pa_down_15','pa_up_16', 'pa_down_16',
'pa_up_17', 'pa_down_17','pa_up_18', 'pa_down_18','pa_up_19', 'pa_down_19','pa_up_20', 'pa_down_20','pa_up_21', 'pa_down_21',
'pa_up_22', 'pa_down_22','pa_up_23', 'pa_down_23','regdate']

# 컬럼명 변경
df.columns = new_cols

# 연결
# db_url = 'mysql+pymysql://디비ID:디비PW@디비주소:포트번호(생략하면 3306)/데이터베이스명'
db_url = 'mysql+pymysql://maria:12345@127.0.0.1:3306/test'

# 엔진생성(절차)
engine = create_engine( db_url, encoding='utf8' )

# 실연결
conn = engine.connect()

# 삽입(테이블은 자동으로 만들어 준다)
df.to_sql( name='seoul_bus_up_down', con=conn, if_exists='replace', index=True )

# 해제
conn.close()

태그: ,

카테고리:

업데이트: