文章目录

  • pymysql 基本使用 八个步骤以及案例分析
    • 一.导入pymysql模块
    • 二.获取到database的链接对象
    • 三.创建数据表的方法
    • 四.获取执行sql语句的光标对象
    • 五.定义要执行的sql语句
      • 1.sql的增加数据的方法
      • 2.sql的删除数据的方法
      • 3.sql的修改数据方法
      • 4.sql的查询方法
    • 六.通过光标对象执行sql语句
      • 1.执行增加数据的sql语句
      • 2.执行删除数据sql语句
      • 3.执行修改数据的sql语句
      • 4.执行查询数据的sql语句
    • 七.关闭光标对象
    • 八.关闭数据库的链接对象
  • 九.洛克王国宠物数据抓取案例
  • 十.总结

pymysql 基本使用 八个步骤以及案例分析

一.导入pymysql模块

   导入pymysql之前需要先安装pymysql模块方法一:直接在pycharm编译器里面输入    pip install pymysql方法二:win+r --> 输入cmd -->在里面输入pip install pymysqlps:在cmd中输入pip list后回车 可以找到安装的pymysql就表示安装成功了
在pycharm编译器中导入import pymysql

二.获取到database的链接对象

coon = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='pymysql_test')
user:是你的数据库用户名
password:数据库密码
database:你已经创建好的数据库

三.创建数据表的方法

cursor.execute(
'''create table if not exists pets(id int primary key  auto_increment,src varchar(50),skill varchar(100)''')

四.获取执行sql语句的光标对象

cousor = coon.cousor()

五.定义要执行的sql语句

1.sql的增加数据的方法

sql = '''insert into test_mysql(id,src,skill) values(%d,%s,%s)'''
 ps: test_mysql 是你连接到的数据库中的一张表id,src,skill 这个是你创建表时所定义的字段关键字%d,%s,%s 这个要根据你创建的字段关键字的类型而定,记住要一一对应

2.sql的删除数据的方法

sql_1 = '''delete from test_mysql where src=%s;'''

3.sql的修改数据方法

sql_2 = '''update test_mysql set src=%s where skill=%s;'

4.sql的查询方法

sql_3 = '''select * from test_mysql where skill = %s'''

六.通过光标对象执行sql语句

1.执行增加数据的sql语句

cousor.execute(sql, [2, 'www.sohu.com', '000000'])运行后在mysql的可视化后台就可以直观的添加的数据

2.执行删除数据sql语句

 new = 'www.baidu.com'cousor.execute(sql_1, [new])PS:这里就是根据sql语句where后面的条件进行删除对应的数据要记住传入的数据要与sql的where后面条件匹配

3.执行修改数据的sql语句

url = 'www.baidu.com'
pwd = '666666'
cousor.execute(sql_2,[pwd,url])

4.执行查询数据的sql语句

result1 = cousor.fetchone() fetchone() 查询=整个表中的第一条数据,如果再次使用就会查找到第二条数据,还可以在括号内输入id值查询到相应的数据result2 = cousor.fetchmany() fetchmany()查询到表里的多条数据,在括号里输入几就会查找到表的前几条数据result2 = cousor.fetchall() fetchall()查询到sql查询匹配到的所有数据print(result)用print输出语句就能直接打印输出所查询到的数据
 **总结: 在执行sql语句要传入参数时,这个参数要以列表或者元组的类型传入**

七.关闭光标对象

cousor.close()

八.关闭数据库的链接对象

coon.cousor()

九.洛克王国宠物数据抓取案例

import requests
import pymysql
from lxml import etree
from time import sleep# 数据库链接
conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='pymysql')
cursor = conn.cursor()
# 执行一条创建表的操作
cursor.execute('''create table if not exists pets(id int primary key  auto_increment,name varchar(50),src varchar(100),industry text)''')url = 'http://news.4399.com/luoke/luokechongwu/'headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}response = requests.get(url=url, headers=headers)
response.encoding = 'gbk'html = response.text
# print(html)# 宠物名称
# 宠物图片(图片在 lz_src)
# 宠物技能(跳转详细页)tree = etree.HTML(html)li_list = tree.xpath('//ul[@id="cwdz_list"]/li')  # 所有的宠物
for li in li_list:name = li.xpath('./@name')[0]  # 每一个宠物的名称src = 'http:' + li.xpath('./a/img/@lz_src')[0]  # 图片链接link = 'http://news.4399.com' + li.xpath('./a/@href')[0]  # 宠物的详细链接industry = []  # 数组里面存放每一个对象,每一个对象就是一个技能# 对详细链接发起请求,获取技能try:detail_resp = requests.get(url=link, headers=headers)sleep(0.5)detail_resp.encoding = 'gbk'detail_tree = etree.HTML(detail_resp.text)# 技能skills = detail_tree.xpath('/html/body/div[5]/div[2]/div[2]/div[1]/div[1]/table[4]/tbody/tr')del skills[0]del skills[0]for skill in skills:item = {}item['name'] = skill.xpath('./td[1]/text()')[0]  # 技能item['grade'] = skill.xpath('./td[2]/text()')[0]  # 等级item['property'] = skill.xpath('./td[3]/text()')[0]  # 属性item['type'] = skill.xpath('./td[4]/text()')[0]  # 类型item['target'] = skill.xpath('./td[5]/text()')[0]  # 目标item['power'] = skill.xpath('./td[6]/text()')[0]  # 威力item['pp'] = skill.xpath('./td[7]/text()')[0]  # ppitem['result'] = skill.xpath('./td[8]/text()')[0]  # 效果industry.append(item)# print(industry)# 数据保存 (mysql)sql = '''insert into pets(name,src,industry) values (%s,%s,%s);'''cursor.execute(sql, [name, src, str(industry)])conn.commit()print(f'{name}--保存成功!')except Exception as e:pass
cursor.close()
conn.close()

十.总结

 本章内容主要是给大家讲解一下在爬虫过程中如何将数据保存mysql数据库中去,最后面这个案例就是一个示范,希望这篇文章能给大家带来帮助,都看到这里了给个三连支持一下吧!!!

一篇文章让你轻松学会python爬取的数据保存到MySQL中,有案例哦相关推荐

  1. Python--爬虫爬取的数据保存到excel

    Python–爬虫爬取的数据保存到excel 文章目录 Python--爬虫爬取的数据保存到excel 一.excel表格存储 二.python3.9没有自带的xlwt模块和xlrd,需要自行下载 三 ...

  2. 轻松入门Python爬取基金数据

    美国疫情越来越严峻,大选也进入了最后阶段,受之影响美股指数也在在下行中.最近的A股也在跟随美股没有什么起色,一直在动荡整理之中.玩股票基金的同学们,最近大家的仓位控制的怎么样?为了更好的科学分析基金, ...

  3. 如何使用python实现简单爬取网页数据并导入MySQL中的数据库

    前言:要使用 Python 爬取网页数据并将数据导入 MySQL 数据库,您需要使用 Requests 库进行网页抓取,使用 BeautifulSoup 库对抓取到的 HTML 进行解析,并使用 Py ...

  4. 老鱼Python数据分析——篇七:将爬取的数据保存到CSV文件

    使用Python操作CSV文件非常方便,三行代码搞定. 一.向文件中追加数据 import csv# 将数据写入文件 with open("d:\\data.csv", " ...

  5. python爬取股票数据并存到数据库

    Python 用Tushare接口获取股票数据并存储到Sqlite数据库 使用技术介绍: 关于接口 由于tushare旧版本即将不能用了,所以我们这里使用的是tushare pro 接口. 关于数据库 ...

  6. Beautifulsoup爬取起点中文网 保存到mysql

    一.分析网页 目标网站:起点中文网 目标数据:类别(categoryName)小说书名(bookName) 小说链接(middleUrl)字数(wordsNums) 作者(updateTiems) 最 ...

  7. 将爬取的数据保存到Excel表格

    第一步.导入模块 import xlwt # 导入写入excel需要的包 第二步.定义函数,将爬取好的数据保存到excel文件中,下面以保存python的关键词为例,介绍详细流程. def write ...

  8. 用python爬取网页数据并存入数据库中源代码_Python爬取51cto数据并存入MySQL方法详解...

    [] 实验环境 1.安装Python 3.7 2.安装requests, bs4,pymysql 模块 实验步骤1.安装环境及模块 可参考https://www.jb51.net/article/19 ...

  9. python爬取疫情数据并存入excel中(包括国内各省份,全球,国内外历史疫情数据)代码可以直接运行

    流程 1.进入获取疫情的url 例如: 腾讯新闻的疫情网站 https://news.qq.com/zt2020/page/feiyan.htm#/ 网易新闻:https://wp.m.163.com ...

最新文章

  1. python中的静态方法和类方法
  2. 谈下关于kaggle的反作弊规则
  3. Angular应用带参数的路由实现
  4. Web应用程序安全性:战斗自己或寻找理智的边缘
  5. 跟着ZHONGHuan学习设计模式--桥接模式
  6. Python 基础 - Day 2 Learning Note - 序列之字符串 String
  7. zabbix 通过import批量导入新增主机和批量删除旧的主机
  8. 阿姆达尔定律(Amdahl's law)
  9. mac 系统服务器地址ping不通,MAC ping IP 地址(ping通/ping不通)
  10. 累计独立访客(UV)不低于 1000是什么意思?如何查看自己小程序的UV数量?
  11. 硬件工程师需要掌握什么基础知识
  12. Mac OS X任务管理器
  13. 俄罗斯FAC认证介绍
  14. 学习笔记二:关于自激振荡
  15. 视频、图形图像处理之Opencv技术记录(四)、OpenCV教程概述
  16. SCI回复审稿意见的模板
  17. Java中如何实现数组输入和输出
  18. PAT 1094 谷歌的招聘 (20 分) c语言
  19. 什么是进程、进程的概念?
  20. 教你无脑式安装Xshell、Xftp,快速远程连接使用Linux服务器并且高效传输文件(保姆级教程)

热门文章

  1. Springboot项目多模块打包jar移动到指定目录,docker打jar包构建镜像部署并运行
  2. Element UI 的 table 单元格合并
  3. pytorch使用LSTM和GRU
  4. 文档不易懂?解释太麻烦?在线录屏技能赶紧Get起来(含录屏软件推荐及教程)
  5. java计算机毕业设计共享单车管理系统源码+mysql数据库+系统+lw文档+部署
  6. 层次聚类-Hierarchical Clustering
  7. OSChina 周六乱弹 —— 交了提升智商的升级服务费
  8. 都市修猿传-第八章-在劫也难逃
  9. ThingsBoard教程(六):设备管理
  10. 【Caffeine进阶】Redis+Caffeine 两级缓存实战,性能爆缸