如何从scrapy调用输出文件名 [英] how to call output filename from scrapy

查看:88
本文介绍了如何从scrapy调用输出文件名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

scrapy 爬取测试 -o test123.csv

如何从代码中调用输出文件名,即我想在 spider_closed 函数中使用终端输入的文件名

@classmethoddef from_crawler(cls, crawler, *args, **kwargs):Spider = super(MySpider, cls).from_crawler(crawler, *args, **kwargs)crawler.signals.connect(spider.spider_closed, 信号=scrapy.signals.spider_closed)def Spider_closed(self):#read test123.csv(无论文件名是什么)

解决方案

您可以在蜘蛛中使用 self.settings.attributes["FEED_URI"].value 来获取输出文件名.>

scrapy crawl test -o test123.csv

How can I call the Output filename from code i.e I would like to use the filename inputed in terminal in spider_closed function

@classmethod
def from_crawler(cls, crawler, *args, **kwargs):
    spider = super(MySpider, cls).from_crawler(crawler, *args, **kwargs)
    crawler.signals.connect(spider.spider_closed, signal=scrapy.signals.spider_closed)
def spider_closed(self):
    #read test123.csv (whatever the filename is)

解决方案

You can use self.settings.attributes["FEED_URI"].value in your spider to get output file name.

这篇关于如何从scrapy调用输出文件名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆