python3图片转换二进制存入mysql

yipeiwu_com6年前Python基础

首先,在数据库中创建一个表,用于存放图片:

复制代码 代码如下:

CREATE TABLE Images(Id INT PRIMARY KEY AUTO_INCREMENT, Data MEDIUMBLOB);


然后运行如下PYTHON代码进行:

复制代码 代码如下:

# -*- coding: UTF-8 -*-
import MySQLdb as mdb
import sys
try:
    #用读文件模式打开图片
    fin = open("../web.jpg")
    #将文本读入img对象中
    img = fin.read()
    #关闭文件
    fin.close()
except IOError, e:
    #如果出错,打印错误信息
    print "Error %d: %s" % (e.args[0],e.args[1])
    sys.exit(1)
try:
    #链接mysql,获取对象
    conn = mdb.connect(host='localhost',user='root',passwd='root', db='test')
    #获取执行cursor
    cursor = conn.cursor()
    #直接将数据作为字符串,插入数据库
    cursor.execute("INSERT INTO Images SET Data='%s'" % mdb.escape_string(img))
    #提交数据
    conn.commit()
    #提交之后,再关闭cursor和链接
    cursor.close()
    conn.close()
except mdb.Error, e:
    #若出现异常,打印信息
    print "Error %d: %s" % (e.args[0],e.args[1])

相关文章

python使用pip安装SciPy、SymPy、matplotlib教程

背景: 使用pip install SciPy的格式安装python函数库SciPy的时候,发现老是报错,从网上找信息也没找到合适的解决办法,最后使用whl格式文件安装成功。 过程: 本...

Window10下python3.7 安装与卸载教程图解

Window10下python3.7 安装与卸载教程图解

1.进入官网https://www.python.org/,点击Downloads下的Windows按钮,进入下载页面。 2.如下图所示,点击下载。 3.安装Python3.7.4...

matplotlib绘制多个子图(subplot)的方法

在matplotlib下,一个Figure对象可以包含多个子图(Axes),可以使用subplot()快速绘制,其调用形式如下: subplot(numRows, numCols,...

Python使用稀疏矩阵节省内存实例

推荐系统中经常需要处理类似user_id, item_id, rating这样的数据,其实就是数学里面的稀疏矩阵,scipy中提供了sparse模块来解决这个问题,但scipy.spar...

python 如何将数据写入本地txt文本文件的实现方法

一、读写txt文件 1、打开txt文件 file_handle=open('1.txt',mode='w') 上述函数参数有(1.文件名,mode模式) mode模式有以下几种...