AttributeError:“FeedExporter”对象没有属性“slot”

2024-10-01 22:25:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个简单的spider,当我调用scrapy crawl dataspider时,它可以正常工作并在输出中打印项目:

import json
from scrapy.spiders import Spider

class dataspider(Spider):
    name='dataspider'
    start_urls=('https://www.google.com/finance/match?matchtype=matchall&ei=UVlPWNmDEYm_U7SqgvAH&q=AAPL',)
    def parse(self, response):
        j=json.loads( response.body.decode('utf-8') )
        yield j['matches'][1]

输出:

{'t': 'AAPL', 'n': 'Apple Inc.', 'e': 'NASDAQ', 'id': '22144'}

但是,一旦我尝试使用scrapy crawl dataspider -o out.json将项目保存到文件中,就会出现以下错误:

AttributeError: 'FeedExporter' object has no attribute 'slot'

回溯是:

^{pr2}$

在之前的回溯中,我也有这个:

Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
  File "/usr/lib/python3.6/site-packages/pydispatch/robustapply.py", line 55, in robustApply
    return receiver(*arguments, **named)
  File "/usr/lib/python3.6/site-packages/scrapy/extensions/feedexport.py", line 187, in open_spider
    uri = self.urifmt % self._get_uri_params(spider)
  File "/usr/lib/python3.6/site-packages/scrapy/extensions/feedexport.py", line 262, in _get_uri_params
    params[k] = getattr(spider, k)
  File "/usr/lib/python3.6/site-packages/scrapy/spiders/__init__.py", line 36, in logger
    logger = logging.getLogger(self.name)
  File "/usr/lib/python3.6/logging/__init__.py", line 1813, in getLogger
    return Logger.manager.getLogger(name)
  File "/usr/lib/python3.6/logging/__init__.py", line 1167, in getLogger
    raise TypeError('A logger name must be a string')
TypeError: A logger name must be a string

知道问题出在哪里吗?在


Tags: nameinpyselflibpackagesusrline

热门问题