python爬虫13:pymysql库
前言
python实现网络爬虫非常简单,只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点,方便以后复习。
申明
本系列所涉及的代码仅用于个人研究与讨论,并不会对网站产生不好影响。
目录结构
文章目录
1. 概述
pymysql是python与MySQL数据库进行交互的库,使用起来非常简单。虽然我用不到MySQL库,电脑重装系统后也没有安装它,但是考虑到可能有的人需要,所以还是说一下它。
学习pymysql非常简单,重要的是要会MySQL的用法,不然单学这个库没啥用的。
2. 方法
2.1 模块:
pymysql
2.2 使用流程:
1. 创建connection2. 获取cursor3. 命令执行4. 关闭cursor5. 关闭connection
2.3 Connection对象:
该对象用于建立与数据库的连接。
conn = pymysql.connect(参数列表)
常用的参数:
参数host:连接的mysql主机,如果本机是'localhost'参数port:连接的mysql主机的端口,默认是3306参数database:数据库的名称参数user:连接的用户名参数password:连接的密码参数charset:通信采用的编码方式,推荐使用utf8
该对象的方法:
conn.close()关闭连接conn.commit()提交(将所有的提交)conn.cursor()返回Cursor对象,用于执行sql语句并获得结果
2.4 Cursor对象:
作用:
用于执行sql语句,使用频度最高的语句为select、insert、update、delete
该对象的常用方法:
close()关闭execute(operation [, parameters ])执行语句,返回受影响的行数,主要用于执行insert、update、delete语句,也可以执行create、alter、drop等语句fetchone()执行查询语句时,获取查询结果集的第一个行数据,返回一个元组fetchall()执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回
2.5 使用举例:
例子一:
from pymysql import *def main(): # 创建Connection连接 conn = connect(host='localhost',port=3306,user='root',password='xxx',database='xxx',charset='utf8') # 获得Cursor对象 cs1 = conn.cursor() # 执行select语句,并返回受影响的行数:查询一条数据 count = cs1.execute('select id,name from goods where id>=4') # 打印受影响的行数 print("查询到%d条数据:" % count) # for i in range(count): # # 获取查询的结果 # result = cs1.fetchone() # # 打印查询的结果 # print(result) # # 获取查询的结果 result = cs1.fetchall() print(result) # 关闭Cursor对象 cs1.close() conn.close()if __name__ == '__main__': main()
例子二:
from pymysql import *def main(): # 创建Connection连接 conn = connect(host='localhost',port=3306,database='xxx',user='root',password='xxx',charset='utf8') # 获得Cursor对象 cs1 = conn.cursor() # 执行insert语句,并返回受影响的行数:添加一条数据 # 增加 count = cs1.execute('insert into goods_cates(name) values("硬盘")') #打印受影响的行数 print(count) count = cs1.execute('insert into goods_cates(name) values("光盘")') print(count) # # 更新 # count = cs1.execute('update goods_cates set name="机械硬盘" where name="硬盘"') # # 删除 # count = cs1.execute('delete from goods_cates where id=6') # 提交之前的操作,如果之前已经之执行过多次的execute,那么就都进行提交 conn.commit() # 关闭Cursor对象 cs1.close() # 关闭Connection对象 conn.close()if __name__ == '__main__': main()
3. 总结
由于我没有安装MySQL库,上面的例子(我之前写过的代码)就没有配图,不过这个库是非常简单的,大家稍微看看应该就会了,没啥好说的。
来源地址:https://blog.csdn.net/weixin_46676835/article/details/132574886