SCRAPY_part6_Item Pipeline

来源:互联网 发布:淘宝上换购是什么意思 编辑:程序博客网 时间:2024/06/09 16:02
  • 当 Item 被爬取后,它会被传送到 Item Pipeline,并被其中的组件按顺序进行处理。每一个 Item pipeline 组件都是一个 python 类,调用一些简单的方法。它们可以接收一个 item并对其进行操作,决定这个 item 是否继续通过 pipeline 还是被丢弃。
  • pipeline 的典型用法有:

    1. 清洗 HTML 数据
    2. 验证爬取的数据(检查 item 是否包含特定的 field)
    3. 查重;
    4. 对爬取数据进行排序
  • 每一个 item pipeline 组件都是一个 python 类,有以下方法:

    1. process_item(self,item,spider)(必须)
      这个方法被每个 item pipeline 组件调用,并且必须返回:或是一个含有数据的字典,或是一个 Item 对象,或是一个 Twisted Deffered 或引发 DropItem 异常.被丢弃的数据不会在pipeline 中继续进行处理。
      参数:item(Item 类或者字典)—爬取的 item;
      spider(Spider 对象)—获取数据的 spider组件
    2. open_spider(self,spider)
      当 spider 开始爬取时调用此方法。
      参数:spider(Spider 对象)—开始爬取的 spider
    3. close_spider(self, spider)
      当 spider 结束时调用此方法。
      参数:spider(Spider 对象)—结束爬取的 spider
    4. from_crawler(cls,crawler)
      此类方法被调用时从 Crawler 类 创建一个 pipeline 实例,它必须返回一个新的 pipeline 实例。Crawler 对象提供了访问和 hook 所有 Scrapy 核心组件(如 settings 和 signals)的方式。
      参数:crawler(Crawler 对象)—使用 pipeline 的 crawler
  • 启用一个 Item Pipeline 组件
    功 能 : 要 启 用 一 个 item pipeline 组 件 , 你必 须 将 其 类 名 添加 到 settings 中的ITEM_PIPELINES 变量中:

ITEM_PIPELINES = {    'myproject.pipelines.PricePipeline': 300,    'myproject.pipelines.JsonWriterPipeline': 800,}

你必须为相应的类设定一个整数值,整数值的范围为 0-1000,此值决定其运行顺序,值越小,优先级越高。

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 网上烘焙店 高级烘焙 烘焙称 烘焙基础 烘焙配方 烘焙diy 烘焙学费 烘焙1号 附近烘焙店 烘焙之家 烘焙还是烘焙 古法烘焙 烘焙私房 饼干烘焙 烘焙课堂 橘子烘焙 正的烘焙 烘焙用品 烘焙是什么 烘焙店连锁 烘焙课 烘焙甜点 烘焙学 我想学烘焙 长沙烘焙 哪里烘焙好 江西烘焙 烘焙市场 烘焙师学校 烘焙点心 私人烘焙 为什么说烘焙穷三代 中国烘焙人才网 烘焙为何一定要用黄油 2017烘焙行业倒闭潮 烘焙到底念bei还是pei 私人烘焙发朋友圈软文 上海星巴克烘焙工坊 私房烘焙高端logo图片 私房烘焙logo图片 星巴克烘焙工坊