###前提・実現したいこと
ローカルでPython3とMySQLの接続を行いたいです!
###発生している問題・エラーメッセージ
sagaemiyakowarenoMacBook-Pro:workspace keiga$ python3 guestbook.py Traceback (most recent call last): File "guestbook.py", line 3, in <module> import MySQLdb File "/Users/keiga/.pyenv/versions/anaconda3-4.0.0/lib/python3.5/site-packages/MySQLdb/__init__.py", line 19, in <module> import _mysql ImportError: dlopen(/Users/keiga/.pyenv/versions/anaconda3-4.0.0/lib/python3.5/site-packages/_mysql.cpython-35m-darwin.so, 2): Library not loaded: libssl.1.0.0.dylib Referenced from: /Users/keiga/.pyenv/versions/anaconda3-4.0.0/lib/python3.5/site-packages/_mysql.cpython-35m-darwin.so Reason: image not found
###該当のソースコード
【guestbook.py】
# coding: utf-8 import shelve import MySQLdb from flask import Flask, request, render_template, redirect, escape, Markup from datetime import datetime application = Flask(__name__) DATA_FILE = 'guestbook.dat' def save_data(name, comment, create_at): con = MySQLdb.connect( unix_socket = '/Applications/MAMP/tmp/mysql/mysql.sock', user='xxxxx', passwd='xxxxx', host='localhost', db='python_character') # カーソルを取得する cur= con.cursor() database = shelve.open(DATA_FILE) if 'greeting_list' not in database: greeting_list = [] else: greeting_list = database['greeting_list'] greeting_list.insert(0, { 'name': name, 'comment': comment, 'create_at': create_at, }) database['greeting_list'] = greeting_list database.close() def load_data(): database = shelve.open(DATA_FILE) greeting_list = database.get('greeting_list', []) database.close() return greeting_list @application.route('/post', methods=['POST']) def post(): name = request.form.get('name') comment = request.form.get('comment') create_at = datetime.now() save_data(name, comment, create_at) return redirect('/') @application.route('/post_index', methods=['POST']) def post_index(): adobe = request.form.get('adobe') return redirect('/') @application.route('/') def index(): greeting_list = load_data() return render_template('index.html', greeting_list=greeting_list) @application.route('/top') def top(): return render_template('top.html') @application.template_filter('nl2br') def nl2br_filter(s): return escape(s).replace('\n', Markup('<br>')) @application.template_filter('datetime_fmt') def datetime_fmt_filter(dt): return dt.strftime('%Y/%m/%d %H:%M:%S') if __name__ == '__main__': application.run('127.0.0.1', 8000, debug=True)
mysqlclientはローカルにインストールできています。
sagaemiyakowarenoMacBook-Pro:workspace keiga$ pip install mysqlclient Requirement already satisfied: mysqlclient in /Users/keiga/.pyenv/versions/anaconda3-4.0.0/lib/python3.5/site-packages
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/22 03:28