爬虫与MySQL的结合之旅(爬虫mysql)
爬虫与MySQL结合之旅
随着互联网的发展,网站的信息也越来越多,为了获取大量的数据,爬虫技术就应运而生。 爬虫技术可以自动抓取网页中的所需数据,节约我们大量的时间,而且实现代码自动化。
然而,获取到数据后,想要进行后续处理,我们还需要有一个存储把这些刚抓取的数据进行存储,以便日后使用。常用的存储方式有文件存储和数据库存储,而数据库MySQL更具有存储量大、数据库操作方便等优势。
因此,我们需要把爬取到的数据,存储到数据库MySQL中,爬取与MySQL的结合之旅就此开启。
我们首先要做的就是使用Python连接到MySQL数据库, 可以使用MySQL官方提供的MySQL Connector for Python库,非常容易就可以用Python连接到MySQL数据库,先用下面的代码进行测试:
import mysql.connector
# 连接MySQL数据库
mydb = mysql.connector.connect(
host = “localhost”, # 数据库主机地址
user = “yourusername”, # 数据库用户名
passwd = “yourpassword” # 数据库密码
)
# 打印数据库连接是否成功
print(mydb)
# 成功显示:
# 现在成功连接到MySQL数据库,接下来就是准备执行数据库操作,Query查询一下已存在数据表:
# 创建游标对象
mycursor = mydb.cursor()
# 使用 execute()方法执行 SQL 查询
mycursor.execute(“SHOW TABLES”)
for x in mycursor:
print(x)
# 执行结果为:
# (‘your_table_name’, )
# 可以看到,现在我们已经可以用Python查询到已存在数据表了,现在就是创建新的数据表,然后插入获取到的爬虫数据:
# 创建数据表
sql = “CREATE TABLE crawldata (id INT AUTO_INCREMENT PRIMARY KEY,content VARCHAR(255))”
# 执行SQL语句
mycursor.execute(sql)
# 然后插入爬虫数据
sql = “INSERT INTO crawldata (content) VALUES (%s)”
val = (“This is a crawler data”)
# 执行SQL语句
mycursor.execute(sql, val)
# 提交数据
mydb.commit()
# 打印插入之后的数据:
mycursor.execute(“SELECT * FROM crawldata”)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
# 执行结果为:
# (1, ‘This is a crawler data’)
从上面的代码可以看到,当爬虫技术与MySQL结合时,我们可以在MySQL数据库中创建数据表,存储爬虫抓取到的数据,并且可以方便的查询,获取爬虫数据,这样我们就可以较为轻松的进行数据后期处理了。
总而言之,爬虫与MySQL的结合之旅,是爬虫开发中绕不开的一段路,结合之后,才可以发挥出爬虫的价值,大大提高我们的效率,非常值得推荐。