在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