Skip to content

Commit

Permalink
ItemLoader: PEP8 adjustments
Browse files Browse the repository at this point in the history
  • Loading branch information
elacuesta committed Sep 25, 2019
1 parent 5c37377 commit 7c2ec90
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 18 deletions.
26 changes: 13 additions & 13 deletions scrapy/loader/__init__.py
@@ -1,19 +1,19 @@
"""Item Loader
"""
Item Loader
See documentation in docs/topics/loaders.rst
"""
from collections import defaultdict

import six

from scrapy.item import Item
from scrapy.loader.common import wrap_loader_context
from scrapy.loader.processors import Identity
from scrapy.selector import Selector
from scrapy.utils.misc import arg_to_iter, extract_regex
from scrapy.utils.python import flatten

from .common import wrap_loader_context
from .processors import Identity


class ItemLoader(object):

Expand Down Expand Up @@ -131,24 +131,24 @@ def get_output_value(self, field_name):
try:
return proc(self._values[field_name])
except Exception as e:
raise ValueError("Error with output processor: field=%r value=%r error='%s: %s'" % \
(field_name, self._values[field_name], type(e).__name__, str(e)))
raise ValueError("Error with output processor: field=%r value=%r error='%s: %s'" %
(field_name, self._values[field_name], type(e).__name__, str(e)))

def get_collected_values(self, field_name):
return self._values[field_name]

def get_input_processor(self, field_name):
proc = getattr(self, '%s_in' % field_name, None)
if not proc:
proc = self._get_item_field_attr(field_name, 'input_processor', \
self.default_input_processor)
proc = self._get_item_field_attr(field_name, 'input_processor',
self.default_input_processor)
return proc

def get_output_processor(self, field_name):
proc = getattr(self, '%s_out' % field_name, None)
if not proc:
proc = self._get_item_field_attr(field_name, 'output_processor', \
self.default_output_processor)
proc = self._get_item_field_attr(field_name, 'output_processor',
self.default_output_processor)
return proc

def _process_input_value(self, field_name, value):
Expand All @@ -173,8 +173,8 @@ def _get_item_field_attr(self, field_name, key, default=None):
def _check_selector_method(self):
if self.selector is None:
raise RuntimeError("To use XPath or CSS selectors, "
"%s must be instantiated with a selector "
"or a response" % self.__class__.__name__)
"%s must be instantiated with a selector "
"or a response" % self.__class__.__name__)

def add_xpath(self, field_name, xpath, *processors, **kw):
values = self._get_xpathvalues(xpath, **kw)
Expand Down
10 changes: 5 additions & 5 deletions tests/test_loader.py
Expand Up @@ -701,7 +701,8 @@ def test_compose(self):
self.assertRaises(ValueError, proc, 'hello')

def test_mapcompose(self):
filter_world = lambda x: None if x == 'world' else x
def filter_world(x):
return None if x == 'world' else x
proc = MapCompose(filter_world, six.text_type.upper)
self.assertEqual(proc([u'hello', u'world', u'this', u'is', u'scrapy']),
[u'HELLO', u'THIS', u'IS', u'SCRAPY'])
Expand All @@ -713,7 +714,6 @@ def test_mapcompose(self):
self.assertRaises(ValueError, proc, 'hello')



class SelectortemLoaderTest(unittest.TestCase):
response = HtmlResponse(url="", encoding='utf-8', body=b"""
<html>
Expand Down Expand Up @@ -850,7 +850,7 @@ def test_get_css(self):

self.assertEqual(l.get_css(['p::text', 'div::text']), [u'paragraph', 'marta'])
self.assertEqual(l.get_css(['a::attr(href)', 'img::attr(src)']),
[u'http://www.scrapy.org', u'/images/logo.png'])
[u'http://www.scrapy.org', u'/images/logo.png'])

def test_replace_css_multi_fields(self):
l = TestItemLoader(response=self.response)
Expand Down Expand Up @@ -898,7 +898,7 @@ def test_nested_xpath(self):

self.assertEqual(l.get_output_value('name'), [u'marta'])
self.assertEqual(l.get_output_value('name_div'), [u'<div id="id">marta</div>'])
self.assertEqual(l.get_output_value('name_value'), [u'marta'])
self.assertEqual(l.get_output_value('name_value'), [u'marta'])

self.assertEqual(l.get_output_value('name'), nl.get_output_value('name'))
self.assertEqual(l.get_output_value('name_div'), nl.get_output_value('name_div'))
Expand All @@ -913,7 +913,7 @@ def test_nested_css(self):

self.assertEqual(l.get_output_value('name'), [u'marta'])
self.assertEqual(l.get_output_value('name_div'), [u'<div id="id">marta</div>'])
self.assertEqual(l.get_output_value('name_value'), [u'marta'])
self.assertEqual(l.get_output_value('name_value'), [u'marta'])

self.assertEqual(l.get_output_value('name'), nl.get_output_value('name'))
self.assertEqual(l.get_output_value('name_div'), nl.get_output_value('name_div'))
Expand Down

0 comments on commit 7c2ec90

Please sign in to comment.