文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python爬虫13:pymysql库

2023-10-07 13:23

关注

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

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯