python爬虫框架哪个好用?

如题所述

爬虫框架中比较好用的是 Scrapy 和PySpider。pyspider上手更简单,操作更加简便,因为它增加了 WEB 界面,写爬虫迅速,集成了phantomjs,可以用来抓取js渲染的页面。Scrapy自定义程度高,比 PySpider更底层一些,适合学习研究,需要学习的相关知识多,不过自己拿来研究分布式和多线程等等是非常合适的。

PySpider

PySpider是binux做的一个爬虫架构的开源化实现。主要的功能需求是:

抓取、更新调度多站点的特定的页面

需要对页面进行结构化信息提取

灵活可扩展,稳定可监控

pyspider的设计基础是:以python脚本驱动的抓取环模型爬虫

通过python脚本进行结构化信息的提取,follow链接调度抓取控制,实现最大的灵活性

通过web化的脚本编写、调试环境。web展现调度状态

抓取环模型成熟稳定,模块间相互独立,通过消息队列连接,从单进程到多机分布式灵活拓展

pyspider的架构主要分为 scheduler(调度器), fetcher(抓取器), processor(脚本执行):

各个组件间使用消息队列连接,除了scheduler是单点的,fetcher 和 processor 都是可以多实例分布式部署的。 scheduler 负责整体的调度控制

任务由 scheduler 发起调度,fetcher 抓取网页内容, processor 执行预先编写的python脚本,输出结果或产生新的提链任务(发往 scheduler),形成闭环。

每个脚本可以灵活使用各种python库对页面进行解析,使用框架API控制下一步抓取动作,通过设置回调控制解析动作。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-09

说实话感觉大同小异。各有优缺点吧~

常见python爬虫框架
1)Scrapy:很强大的爬虫框架,可以满足简单的页面爬取(比如可以明确获知url pattern的情况)。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。但是对于稍微复杂一点的页面,如weibo的页面信息,这个框架就满足不了需求了。
2)Crawley: 高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等
3)Portia:可视化爬取网页内容
4)newspaper:提取新闻、文章以及内容分析
5)python-goose:java写的文章提取工具
6)Beautiful Soup:名气大,整合了一些常用爬虫需求。缺点:不能加载JS。
7)mechanize:优点:可以加载JS。缺点:文档严重缺失。不过通过官方的example以及人肉尝试的方法,还是勉强能用的。
8)selenium:这是一个调用浏览器的driver,通过这个库你可以直接调用浏览器完成某些操作,比如输入验证码。
9)cola:一个分布式爬虫框架。项目整体设计有点糟,模块间耦合度较高。

资料来源:

希望我的回答对你有帮助~

第2个回答  2019-12-09
爬虫框架中比较好用的是 Scrapy 和PySpider。pyspider上手更简单,操作更加简便,因为它增加了 WEB 界面,写爬虫迅速,集成了phantomjs,可以用来抓取js渲染的页面。Scrapy自定义程度高,比 PySpider更底层一些,适合学习研究,需要学习的相关知识多,不过自己拿来研究分布式和多线程等等是非常合适的。
第3个回答  2020-09-23
Python爬虫常用框架有:
grab:网络爬虫框架;
scrapy:网络爬虫框架,不支持Python3;
pyspider:一个强大的爬虫系统;
cola:一个分布式爬虫框架;
portia:基于Scrapy的可视化爬虫;
restkit:Python的HTTP资源工具包。它可以让你轻松地访问HTTP资源,并围绕它建立的对象。
demiurge:基于PyQuery的爬虫微框架。
第4个回答  2019-12-09
Scrapy框架是一套比较成熟的Python爬虫框架,是使用Python开发的快速、高层次的信息爬取框架,可以高效的爬取web页面并提取出结构化数据。

Scrapy应用范围很广,爬虫开发、数据挖掘、数据监测、自动化测试等。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网