初心者エンジニアの理論と実践メモ

本や授業のスライドをかみ砕いたメモ。機械学習メインで。

PythonからMysqlを操作[2018/07/20]

ドキュメント

MySQL Connector/Python公式ドキュメント https://dev.mysql.com/doc/connector-python/en/

インストール

pip install mysql-connector-python-rf

起動

mysql.server start
mysql -u root -p
# macOSの場合、パスワードは設定されてないのでEnter押すだけ

データベースの作成、権限を付与したユーザーの作成

CREATE DATABASE scraping DEFAULT CHARACTER SET utf8b4;

CREATE USER scraper@localhost;

GRANT ALL ON scraping.* TO scraper@localhost IDENTIFIED BY 'password';

ちなみにユーザーが作成できているか確認する場合は

select Host, User from mysql.user;

pythonから接続

# 別ファイルに記述
USER = 'scraper'
DBNAME = 'scraping'
PASSWORD = 'password'
HOST = 'localhost'
PORT = 3306

import mysql.connector


config = {
    'user': USER,
    'password': PASSWORD,
    'host': HOST,
    'database' : DBNAME,
    'port': PORT
}
cnx = mysql.connector.connect(**config)
# 疎通確認
cnx.is_connected()

cursor = cnx.cursor()

cursor.execute('show databases;')

cursor.fetchall()

# [('information_schema',), ('scraping',)]出力

上場企業情報を保持するテーブルを作る

銘柄コード 銘柄名 市場名 created_at updated_at

元データの取得先 東京証券取引所東証上場銘柄一覧 http://www.jpx.co.jp/markets/statistics-equities/misc/tvdivq0000001vg2-att/data_j.xls