コード例 #1
0
ファイル: spidermw.py プロジェクト: justinschuster/scrapy
 def _evaluate_iterable(self, response: Response, spider: Spider,
                        iterable: Iterable, exception_processor_index: int,
                        recover_to: MutableChain) -> Generator:
     try:
         for r in iterable:
             yield r
     except Exception as ex:
         exception_result = self._process_spider_exception(
             response, spider, Failure(ex), exception_processor_index)
         if isinstance(exception_result, Failure):
             raise
         recover_to.extend(exception_result)
コード例 #2
0
ファイル: test_utils_python.py プロジェクト: zz123okl1/scrapy
 def test_mutablechain(self):
     m = MutableChain(range(2), [2, 3], (4, 5))
     m.extend(range(6, 7))
     m.extend([7, 8])
     m.extend([9, 10], (11, 12))
     self.assertEqual(next(m), 0)
     self.assertEqual(m.next(), 1)
     self.assertEqual(m.__next__(), 2)
     self.assertEqual(list(m), list(range(3, 13)))
コード例 #3
0
ファイル: test_utils_python.py プロジェクト: elacuesta/scrapy
 def test_mutablechain(self):
     m = MutableChain(range(2), [2, 3], (4, 5))
     m.extend(range(6, 7))
     m.extend([7, 8])
     m.extend([9, 10], (11, 12))
     self.assertEqual(next(m), 0)
     self.assertEqual(m.next(), 1)
     self.assertEqual(m.__next__(), 2)
     self.assertEqual(list(m), list(range(3, 13)))
コード例 #4
0
 def test_mutablechain(self):
     m = MutableChain(range(2), [2, 3], (4, 5))
     m.extend(range(6, 7))
     m.extend([7, 8])
     m.extend([9, 10], (11, 12))
     self.assertEqual(next(m), 0)
     self.assertEqual(m.__next__(), 1)
     with catch_warnings(record=True) as warnings:
         self.assertEqual(m.next(), 2)
         self.assertEqual(len(warnings), 1)
         self.assertIn('scrapy.utils.python.MutableChain.__next__',
                       str(warnings[0].message))
     self.assertEqual(list(m), list(range(3, 13)))