From 838bc0809806b02664d1a88db759d6987abd9741 Mon Sep 17 00:00:00 2001 From: orangain Date: Sun, 7 Feb 2016 09:41:16 +0900 Subject: [PATCH] PY3: Fix TypeError when outputting to stdout This will fix #1768. --- scrapy/extensions/feedexport.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scrapy/extensions/feedexport.py b/scrapy/extensions/feedexport.py index 6c54bd38e..3dab2d77e 100644 --- a/scrapy/extensions/feedexport.py +++ b/scrapy/extensions/feedexport.py @@ -10,6 +10,7 @@ import logging import posixpath from tempfile import TemporaryFile from datetime import datetime +import six from six.moves.urllib.parse import urlparse from ftplib import FTP @@ -58,7 +59,9 @@ class BlockingFeedStorage(object): @implementer(IFeedStorage) class StdoutFeedStorage(object): - def __init__(self, uri, _stdout=sys.stdout): + def __init__(self, uri, _stdout=None): + if not _stdout: + _stdout = sys.stdout if six.PY2 else sys.stdout.buffer self._stdout = _stdout def open(self, spider):