title: Python,Scrapy, Pipeline: function "process_item" not getting called
body: <p>I have a very simple code, shown below. Scraping is okay, I can see all <code>print</code> statements generating correct data. In <code>Pipeline</code>,initialization is working fine. However, <code>process_item</code> function is not getting called, as <code>print</code> statement at the start of the function is never executed.</p>
  
  <p>Spider: comosham.py</p>
  
  <pre><code>import scrapy
  from scrapy.spider import Spider
  from scrapy.selector import Selector
  from scrapy.http import Request
  from activityadvisor.items import ComoShamLocation
  from activityadvisor.items import ComoShamActivity
  from activityadvisor.items import ComoShamRates
  import re
  
  
  class ComoSham(Spider):
      name = "comosham"
      allowed_domains = ["www.comoshambhala.com"]
      start_urls = [
          "http://www.comoshambhala.com/singapore/classes/schedules",
          "http://www.comoshambhala.com/singapore/about/location-contact",
          "http://www.comoshambhala.com/singapore/rates-and-offers/rates-classes",
          "http://www.comoshambhala.com/singapore/rates-and-offers/rates-classes/rates-private-classes"
      ]
  
      def parse(self, response):  
          category = (response.url)[39:44]
          print 'in parse'
          if category == 'class':
              pass
              """self.gen_req_class(response)"""
          elif category == 'about':
              print 'about to call parse_location'
              self.parse_location(response)
          elif category == 'rates':
              pass
              """self.parse_rates(response)"""
          else:
              print 'Cant find appropriate category! check check check!! Am raising Level 5 ALARM - You are a MORON :D'
  
  
      def parse_location(self, response):
          print 'in parse_location'       
          item = ComoShamLocation()
          item['category'] = 'location'
          loc = Selector(response).xpath('((//div[@id = "node-2266"]/div/div/div)[1]/div/div/p//text())').extract()
          item['address'] = loc[2]+loc[3]+loc[4]+(loc[5])[1:11]
          item['pin'] = (loc[5])[11:18]
          item['phone'] = (loc[9])[6:20]
          item['fax'] = (loc[10])[6:20]
          item['email'] = loc[12]
          print item['address'],item['pin'],item['phone'],item['fax'],item['email']
          return item
  </code></pre>
  
  <p>Items file:</p>
  
  <pre><code>import scrapy
  from scrapy.item import Item, Field
  
  class ComoShamLocation(Item):
      address = Field()
      pin = Field()
      phone = Field()
      fax = Field()
      email = Field()
      category = Field()
  </code></pre>
  
  <p>Pipeline file:</p>
  
  <pre><code>class ComoShamPipeline(object):
      def __init__(self):
          self.locationdump = csv.writer(open('./scraped data/ComoSham/ComoshamLocation.csv','wb'))
          self.locationdump.writerow(['Address','Pin','Phone','Fax','Email'])
  
  
      def process_item(self,item,spider):
          print 'processing item now'
          if item['category'] == 'location':
              print item['address'],item['pin'],item['phone'],item['fax'],item['email']
              self.locationdump.writerow([item['address'],item['pin'],item['phone'],item['fax'],item['email']])
          else:
              pass
  </code></pre>