Python提供了许多库,可以方便地操作各种类型的数据库,包括SQLite,MySQL,PostgreSQL等。在这个章节中,我们将以SQLite为例,介绍如何使用Python进行数据库操作。

SQLite

SQLite是一个轻量级的数据库,它的数据库就是一个文件,非常适合小型应用。

Python的标准库中包含了sqlite3模块,你可以使用它来操作SQLite数据库。

连接到数据库

你可以使用sqlite3.connect函数来连接到一个数据库。如果数据库不存在,SQLite将创建一个新的数据库。

import sqlite3

conn = sqlite3.connect('example.db')

在这个例子中,我们连接到一个名为'example.db'的数据库。

创建表

你可以使用cursor.execute方法来执行SQL命令。

以下是一个创建表的例子:

cursor = conn.cursor()

cursor.execute('''
CREATE TABLE stocks (
    date text,
    trans text,
    symbol text,
    qty real,
    price real
)
''')

在这个例子中,我们创建了一个名为'stocks'的表,它包含五个字段:date,trans,symbol,qty和price。

插入数据

你可以使用cursor.execute方法来插入数据。

以下是一个插入数据的例子:

cursor.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)")

在这个例子中,我们向'stocks'表中插入了一行数据。

你也可以使用?作为占位符,然后提供一个元组作为execute方法的第二个参数:

data = ('2006-03-28', 'BUY', 'IBM', 1000, 45.00)
cursor.execute("INSERT INTO stocks VALUES (?,?,?,?,?)", data)

这是一个更安全的做法,它可以防止SQL注入攻击。

查询数据

你可以使用cursor.execute方法来查询数据,然后使用cursor.fetchallcursor.fetchone方法来获取查询结果。

以下是一个查询数据的例子:

cursor.execute("SELECT * FROM stocks WHERE symbol = 'RHAT'")
print(cursor.fetchall())

在这个例子中,我们查询了所有symbol为'RHAT'的记录。

提交事务

在SQLite中,你的修改在提交事务之前不会被保存。你可以使用connection.commit方法来提交事务:

conn.commit()

关闭连接

完成所有操作后,你应该关闭连接。你可以使用connection.close方法来关闭连接:

conn.close()

这就是Python操作SQLite数据库的基本知识。现在,你可以尝试使用这些知识来存储你爬取的数据了。
推荐阅读:

https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA

https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g

file


移动安全星球
1 声望2 粉丝