下面是代码的开始部分:
class GetId(scrapy.Spider):
name = "get_id"
path = expanduser("~").replace('\\', '/') + '/dox/Getaround/'
days = [0, 1, 3, 7, 14, 21, 26, 31]
dates = []
previous_cars_list = []
previous_cars_id_list = []
crawled_date = datetime.today().date()
for day in days:
market_date = crawled_date + timedelta(days=day)
dates.append(market_date)
# Settings
custom_settings = {
'ROBOTSTXT_OBEY' : False,
'DOWNLOAD_DELAY' : 5,
'CONCURRENT_REQUESTS' : 1,
'CONCURRENT_REQUESTS_PER_DOMAIN': 1,
'AUTOTHROTTLE_ENABLED' : True,
'AUTOTHROTTLE_START_DELAY' : 5,
'LOG_STDOUT' : True,
'LOG_FILE' : path + 'log_get_id.txt',
'FEED_FORMAT': 'json',
'FEED_URI': path + 'cars_id.json',
}
我在2年前就这样做了,没有任何问题。现在,一旦我在Anaconda控制台中输入“scrapy crawl get_id”,只有日志文件被导出,而不是包含数据的json。在日志文件中,出现了以下错误:
2022-08-25 15:14:48 [零碎.扩展.feedexport]错误:未知的摘要存储方案:C语言
你知道怎么处理吗?谢谢
2条答案
按热度按时间kkih6yb81#
我不知道它是什么版本的,但是我总是使用
FEEDS
设置,或者在settings.py文件中,或者使用自定义设置类属性,就像你在例子中使用的那样。例如:
您可以在www.example.com上找到所有可以设置的字段https://docs.scrapy.org/en/latest/topics/feed-exports.html#feeds
dfty9e192#
刮擦2.1.0(2020年4月24日)
不推荐使用FEED_FORMAT和FEED_URI设置,而推荐使用新的FEEDS设置(问题1336、问题3858和问题4507)。
https://docs.scrapy.org/en/latest/news.html?highlight=FEED_URI#id30
在这种情况下,有两个选项可以使用旧版本的Scrapy,例如:
或使用
FEEDS
;您可以在www.example.com阅读更多信息https://docs.scrapy.org/en/latest/topics/feed-exports.html#feeds