我是靠谱客的博主 沉静黄豆,最近开发中收集的这篇文章主要介绍python爬虫的速度_不踩坑的Python爬虫,加快爬取速度,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

随着计算机语言的发展,Python也跻身于语言排行的常青树。要是说Python是最目前最火爆的语言,应该没有人反驳吧。在当下的人工智能浪潮中,Python可以说是C位出道,成功引起大家的注意的了。

本文将展现怎样运用Python中的异步模块来提升爬虫的效率。我们需要爬取的目标为:融360网站上的理财产品信息(https://www.rong360.com/licai-bank/list/p1),页面如下:

我们需要爬取116405条理财产品的信息,每页10条,也就是11641个页面。

在文章Python爬虫(16)利用Scrapy爬取银行理财产品信息(共20多万条)中,我们采用爬虫框架Scrapy完成了该爬虫,爬取了207130条数据,并存入MongoDB,整个流程用时3个多小时。一般而言,使用Scrapy完成爬虫是不错的方法,但是在速度上,是不是有提升呢?本文将展示怎么运用Python中的异步模块(aiohtpp和asyncio)来提升爬虫的效率。爬虫项目

我们的爬虫分两步走:

1、爬取融360网页上的理财产品信息并存入csv文件;

2、读取csv文件并存入至MySQL数据库。

首先,我们爬取融360网页上的理财产品信息并存入csv文件,我们使用aiohttp和asyncio来加速爬虫,完整的Python代码如下图:

输出的结果如下图(中间的输出已省略,以......代替):

能够看出,在这个爬虫中,我们爬取了86391条数据,耗时1787.4秒,不到30分钟。虽然数据比预期的少了3条,但这点损失不算什么。来看一眼csv文件中的数据:

OK,离我们的目标还差一步,将这个csv文件存入至MySQL,具体的操作方法可参考文章:Python之使用Pandas库实现MySQL数据库的读写:https://www.jianshu.com/p/238a13995b2b 。完整的Python代码如下图:

输出结果如下(耗时十几秒):

如果你还不放心,也许我们可以看一眼MySQL中的数据:

总结

让我们来比较该爬虫与使用Scrapy的爬虫。使用Scrap用的爬虫爬取了127130条数据,耗时3小时,该爬虫爬取86391条数据,耗时半小时。如果是同样的数据量,那么Scrapy爬取86391条数据耗时约2小时,该爬虫仅用了Scrapy爬虫的四分之一的时间就出色地完成了任务。

最后,让我们看看前十名的银行及理财产品数量(按理财产品数量从高到低排列),输入以下MySQL命令:

输出结果如下:

最后

以上就是沉静黄豆为你收集整理的python爬虫的速度_不踩坑的Python爬虫,加快爬取速度的全部内容,希望文章能够帮你解决python爬虫的速度_不踩坑的Python爬虫,加快爬取速度所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部