Python多框架选择
创始人
2024-06-02 19:48:32

一、Python框架的分类

1.分布式爬虫:Nutch

优点:

分布式抓取,存储和索引,有hadoop支持,第三方插件丰富

缺点:

1.分布式爬虫是好几台机器在同时运行,如何保证不同的机器爬取页面的时候不会出现重复爬取的问题。

同样,分布式爬虫在不同的机器上运行,在把数据爬完后如何保证保存在同一个地方。

2.使用上手难,用Nutch进行爬虫的二次开发,爬虫的编写和调试所需的时间,往往是单机爬虫所需的十倍时间不止。

2.JAVA单机爬虫:Crawler4j、WebMagic、WebCollector

优点:

  1. 难问题和复杂的问题都被以前的人解决了(比如DOM树解析和定位、字符集检测、海量URL去重)

  1. 使用java语言,对java工程师门槛更低

  1. 支持多线程。

  1. 支持代理。

  1. 能过滤重复URL的。

  1. 负责遍历网站和下载页面。爬js生成的信息和网页信息抽取模块有关,往往需要通过模拟浏览器(htmlunit,selenium)来完成。

缺点:

设计模式对软件开发没有指导性作用。用设计模式来设计爬虫,只会使得爬虫的设计更加臃肿。

3. 非JAVA单机爬虫:scrapy

优点:

1.可以作为做分布式的爬虫,借助一个组件Scrapy-Redis,利用了Redis可以分布式的功能,集成到Scrapy框架中,使得爬虫可以进行分布式。

2.Python的语法简洁 ,入门简单,节点解析简洁高效

缺点:

1. 只能爬取静态网页,无法爬取动态网页。

2. 只能爬取一个网站的数据,无法爬取多个网站的数据。

3. 爬取网页速度较慢,因为它会延迟一段时间再进行下一次请求,以免被网站认为是攻击而封禁 IP 地址。

4. 对网站的服务器负载较大,如果爬取的网站没有足够的带宽,可能会导致网站瘫痪。

5. 爬取的数据并不是实时数据,而是爬取时的数据。

6. 爬取的数据可能会有误差,因为网页内容可能会经常更新。

7.如果爬取的网站有反爬虫措施,Scrapy 可能会被封禁 IP 地址

相关内容

热门资讯

苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...