def grab_data(self, response): item = YurikaItem() #TODO: add more properties item['_id'] = response.meta['id'] item['title'] = response.css('.h1').xpath( './span/text()').extract_first() i = 0 objects = response.css('.js-scrollfix-bottom').css( '.spaceit').extract() for o in objects: if "Episodes:" in o: break i += 1 num_episodes = Selector(text=objects[i]).css('.spaceit') \ .xpath('./text()').extract()[1].strip() item['num_episodes'] = int( num_episodes) if num_episodes.isdigit() else -1 yield item if MalCrawlerSpider.requests: yield MalCrawlerSpider.requests.pop()