Python爬虫0基础入门,快速抓取大规模数据!建议收藏!

在这一部份咱们将看看怎么存储数据。需求存储的数据有两部份,一部分是咱们已经抓取和未被抓取的网页地址;另一部不份是咱们抓取到的数据。首先想到的存储方式是使用关系数据库来存储。

在关系数据库中,表是数据库中存放关系数据的集合,一个数据库里面一般都包括多个表,要操作关系数据库,首先需求衔接到数据库,一个数据库衔接称为Connection;衔接到数据库后,需求打开游标cursor,通过Cursor执行SQL语句。

使用SQLite存储数据

SQLite是一种嵌入式数据库,它的数据库就是一个文件。python就内置了SQLite3,所以咱们不需求装置任何额外的东西。本着从最简单的下手然后逐步深入的准则,咱们先看看怎么使用SQLite存储数据,然后在看看怎么使用其他关系数据库。

在咱们的数据库中创建一张urls的表,这张表包括两个字段url和timestamp。timestamp字段记录url采集的时刻,没有采集的timestamp为空。

下面函数add_new_url()用来添加新的未采集的url数据库表中。

下面函数get_unvisited_url()将从数据库中返回一条待采集的url。

使用MySQL存储数据

这一部分我们已经安装和搭建了一台Mysql的数据库,这里就不讨论如何搭建Mysql数据库了。如果你已经学习了上一节中如何SQLite来存储数据,那么你已经学会了基本的python的数据库编程。对于理解下面的代码不会有任何问题,和SQLite版本的区别只是数据库连接的方式不一样而已。

总结

这部分我们讨论了如何让我们的URL存储到关系数据库中,作为扩展练习读者还可以用同样的方法保存抓取到的网页内容。除了关系数据库之外,我们也可以使用非关系数据来保存数据。

另外,在接下来的章节中我们将讨论如何抓取动态生成内容的网页。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180519A1H7LD00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券