목적
- Synology 패키지에서 기본 제공하는 DB인 mariaDB(mysql 기반)의 DB에 원격으로 접속하는 파이썬 코드를 작성
- SQL로 출력된 데이터를 Dataframe 형태로 받아온다 => 인지시에는 Table형태가 익숙하고 유리하다.
위 네개 패키지 기본 설치 진행
mysql-connector 가 없으면 연결시 에러처리 되니 유의
!pip install pymysql
!pip install mysql
!pip install mysql-connector
!pip install sqlalchemy
import pymysql
from pandas import json_normalize
from sqlalchemy import create_engine
#DB관련 라이브러리
import mysql.connector as mariadb
from mysql.connector import Error
# MySQL Connector using pymysql
pymysql.install_as_MySQLdb()
import MySQLdb
import pandas as pd
접속부분에서 아래 코드에서 접속ID , 비밀번호, DB접속주소/스키마명 을 수정하여 사용한다
encoding은 한글이 있어서 utf-8을 기준으로 한다
# DB connection
try:
engine = create_engine("mysql+mysqldb://접속ID:"+"비밀번호"+"@DB접속주소/스키마명", encoding='utf-8')
conn = engine.connect()
except Error as e:
print("Error while connecting to MySQL", e)
finally:
print("Complete")
sql문을 작성하고 이를 연결된 DB에 실행하고 Dataframe형태로 가져온다
# SQL문 실행
sql = "SELECT * FROM api_apt.지역코드관리"
df1 = pd.read_sql(sql, conn)
아래 형태로 가져와 지는것을 확인할 수 있다
역시 Table형태로 보니 심플하다
반응형
'IT > Python' 카테고리의 다른 글
[국토부실거래가] 아파트 분양권 크롤링 API Python 개발 (0) | 2023.02.06 |
---|---|
[Web크롤링] 감정분석을 위한 네이버 쇼핑 코멘트/평점 Python 크롤링 (1) | 2023.02.02 |
[Web크롤링] 감정분석을 위한 잡플레닛 코멘트/평점 Python 크롤링 (0) | 2023.02.01 |
[Web크롤링] 감정분석을 위한 네이버영화 코멘트/평점 Python 크롤링 (0) | 2023.02.01 |
[OpenDart-1] Python으로 Dart기업정보 DataFrame으로 저장하기 (0) | 2023.01.30 |