def parse(self, response):
        """
        Default callback used by Scrapy to process download response

        Testing contracts:
        @url http://www.livingsocial.com/cities/15-san-francisco
        @returns items 1
        @scrapes title link
        :param response:
        :return:
        """
        selector = HtmlXPathSelector(response)

        # iterate over deals
        for deal in selector.select(self.deals_list_xpath):

            loader = XPathItemLoader(LivingSocialDeal(), selector=deal)

            # define processors
            loader.default_input_processor = TakeFirst()
            loader.default_input_processor = MapCompose(unicode.strip)
            loader.default_input_processor = Join()
            loader.defalut_output_processor = TakeFirst()

            # iterate over fields and add xpaths to the loader
            for field, xpath in self.item_fields.iteritems():
                loader.add_xpath(field, xpath)
            yield loader.load_item()