【问题标题】:Can't get Scrapy pipeline to work无法让 Scrapy 管道工作
【发布时间】:2011-05-04 16:44:22
【问题描述】:

我有使用 Scrapy 框架编写的蜘蛛。我在让任何管道正常工作时遇到了一些麻烦。我的 pipelines.py 中有以下代码:

class FilePipeline(object):

    def __init__(self):
        self.file = open('items.txt', 'wb')

    def process_item(self, item, spider):
        line = item['title'] + '\n'
        self.file.write(line)
        return item

我的 CrawlSpider 子类有这条线来激活这个类的管道。

ITEM_PIPELINES = [
        'event.pipelines.FilePipeline'
    ]

但是当我使用它运行它时

scrapy crawl my_spider

我得到一条线,上面写着

2010-11-03 20:24:06+0000 [scrapy] DEBUG: Enabled item pipelines:

没有管道(我认为这是日志记录应该输出它们的地方)。

我已尝试查看文档,但似乎没有完整项目的完整示例来查看我是否遗漏了任何内容。

对接下来要尝试什么有什么建议吗?或者去哪里寻找更多的文件?

【问题讨论】:

    标签: python web-crawler pipeline scrapy scraper


    【解决方案1】:

    我敢打赌,这是管道中某个地方的大小写差异:

    管道与管道

    我注意到'event.pipelines.FilePipeline' 使用前者,而您的代码使用后者:您的文件名使用哪个?

    (我已经多次成为这个拼写错误的受害者!)

    【讨论】:

    • 感谢您发现这一点(不敢相信我错过了!),但不幸的是它仍然无法正常工作
    • 这仍然是我的赌注,继续检查! :P(如果没有,我没有想法......)
    • 我再看看。干杯!
    【解决方案2】:

    知道了!该行需要进入项目的设置模块。现在可以了!

    【讨论】:

    • 不,我的客户可能把它放在了某个地方,但恐怕不是我开源的地方。
    • 我不得不使用 ITEM_PIPELINES 作为字典而不是设置文件中的列表
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-10
    • 2020-01-10
    • 1970-01-01
    • 2013-07-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多