python网页数据抓取(Python爬虫入门,快速抓取*敏*感*词*数据(第一部分)(组图))
优采云 发布时间: 2022-04-07 11:33python网页数据抓取(Python爬虫入门,快速抓取*敏*感*词*数据(第一部分)(组图))
如果你还没有读过前两部分,建议阅读前两部分:
Python爬虫入门,快速抓取海量数据(上)
Python爬虫入门,快速抓取海量数据(下)
在这一部分中,我们将看看数据是如何存储的。需要存储的数据有两部分,一部分是我们已经爬取的和没有被爬取的网址;另一部分是我们爬取的数据。想到的第一个存储方法是使用关系数据库进行存储。
在关系数据库中,表是存储在数据库中的关系数据的集合。一个数据库通常收录多个表。要操作关系数据库,首先需要连接到数据库。一个数据库连接称为Connection;连接数据库后,需要打开它。游标游标,通过Cursor 执行SQL 语句。
使用 SQLite 存储数据
SQLite 是一个嵌入式数据库,它的数据库是一个文件。Python 内置了 SQLite3,所以我们不需要额外安装任何东西。本着从最简单开始逐步深入的原则,我们先看看如何使用SQLite存储数据,再看看如何使用其他关系型数据库。
在我们的数据库中创建一个 urls 表,该表收录两个字段 url 和 timestamp。时间戳字段记录了url采集的时间,没有采集的时间戳为空。
以下函数 add_new_url() 用于添加新的 采集 url 数据库表。
以下函数 get_unvisited_url() 将从数据库中返回一个 采集 的 url。
使用 MySQL 存储数据
这部分我们已经安装搭建了Mysql数据库,这里不讨论如何搭建Mysql数据库。如果您在上一节中学习了如何在 SQLite 中存储数据,那么您已经学习了基本的 Python 数据库编程。看懂下面的代码是没有问题的,和SQLite版本唯一的区别就是数据库的连接方式。
总结
在本节中,我们讨论了如何将我们的 URL 存储在关系数据库中,作为扩展练习,读者也可以使用相同的方法来保存爬取的 Web 内容。除了关系型数据库,我们还可以使用非关系型数据来存储数据。
此外,在接下来的章节中,我们将讨论如何使用动态生成的内容来抓取网页。