实战|教你用 Python 玩转 Mysql


爬虫采集下来的数据除了存储在文本文件、excel 之外,还可以存储在数据集,如:Mysql,redis,mongodb 等,今天辰哥就来教大家如何使用 Python 连接 Mysql,并结合爬虫为大家讲解。

前提:这里默认大家已经安装好 mysql。

01

Mysql 简介

mysql 是关系型数据库,支持大型的数据库,可以处理拥有上千万条记录的大型数据库。通过爬虫采集的数据集存储到 mysql 后,可以借助 mysql 的关联查询将相关的数据一步取出。具体的作用这里就不赘述了,下面开始进入实际操作。

1.安装 pymysql

通过下面这个命令进行安装

pip install pymysql

复制代码

pymysql 库:Python3 链接 mysql

备注:

ps:MYSQLdb 只适用于 python2.x

python3 不支持 MYSQLdb,取而代之的是 pymysql

运行会报:ImportError:No module named MYSQLdb

2.python 连接 mysql

import pymysql as pmq

复制代码

localhost 是本机 ip,这里用 localhost 表示是当前本机,否则将 localhost 改为对应的数据库 ip。

root 是数据库用户名,123456 是数据库密码,python_chenge 是数据库名。

图上的数据库 python_chenge 已经建立好(建好之后,才能用上面代码去连接),建好之后,当前是没有表的,现在开始用 Python 进行建表,插入、查询,修改,删除等操作(结合爬虫去讲解)

02

建表

在存储之前,先通过 python 创建表,字段有四个(一个主键+电影名称,链接,评分)

# 创建 movie 表

复制代码

创建表 movie,字段分别为(id ,title ,url ,rate ),CHARACTER SET utf8 COLLATE utf8_general_ci 是字符串编码设置为 utf8 格式

id 是主键 primary key,int 类型,AUTO_INCREMENT 自增,非空 not null

title,url 是字符串类型 varchar(100),同样非空

评分 rate 是带小数的数字,所以是 float,同样非空

03

插入数据

爬虫已经采集到数据,python 已经建好表,接着可以将采集的数据插入到数据库,这里介绍两种方式

### 插入数据

复制代码

id 是自增的,所以不需要在传值进去。

定义好插入数据库方法后,开始往数据库进行存储

for i in json_data[subjects]:

复制代码

04

查询

1.查询所有

查询表中所有数据

# 查询

复制代码

2.查询指定的数据

比如查询标题为:唐人街 3 这一条数据的所有字段

#查询单条

复制代码

05

更新修改

更新数据,还是以上面:唐人街 3 为例,id 为 7,将唐人街 3 评分从 5.5 改为 6

### 更新

复制代码

同时看一下数据库

06

删除

同样还是以唐人街为例,其 id 为 7,删除的话咱们可以更新 id 去删除

def delete(Id):

复制代码

删除之后,就没有第 7 条数据了,说明删除成功

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/291554.html

(0)
上一篇 2022年10月20日
下一篇 2022年10月20日

相关推荐

发表回复

登录后才能评论