欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

scrapy使用Pipeline保存数据至本地遇到的问题

程序员文章站 2022-05-11 23:17:59
...

在scrapy的settings.py文件中设置了

ITEM_PIPELINES = {
    # 数值小的 Pipeline 类优先执行
    'mypjt.pipelines.MypjtPipeline': 300,
}

但执行爬虫的时候,只调用了Pipeline的init()方法,却没有自动调用process_item()。


解决办法:

在parse()方法中最后加上  yield item

    def parse(self, response):
        item = MypjtItem()
        # 通过Xpath表达式提取网页中的标题信息
        item["title"] = response.xpath("/html/head/title/text()")
        # 直接输出,在Python3.X中,虽然包含中文信息,但直接输出即可
        print(item["title"])
        yield item