Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
185 ashish 1
'''
2
Created on 20-May-2010
3
 
4
@author: gaurav
5
'''
6
 
7
from scrapy.spider import BaseSpider
8
from scrapy.selector import HtmlXPathSelector
9
from scrapy.http import Request
10
 
11
from demo.items import DemoItem
12
from scrapy.contrib.spidermiddleware import referer
13
from scrapy.http.headers import Headers
14
from scrapy.http.request.form import FormRequest
15
from scrapy.log import msg
16
from scrapy.http.response import Response
17
 
18
 
19
from datastore import DataAccessor
20
from datastore.DataAccessor import DataHelper
21
 
22
class mobstore_price(BaseSpider):
23
 
24
    def __init__(self):
25
       self.domain_name = "mobstorephones"
26
       da = DataHelper()
27
       for pitem in da.get_allmobstoreurls():
28
            self.start_urls.append(pitem.url.strip())
29
 
30
    def start_requests(self):
31
        listreq = []
32
        for url1 in self.start_urls:
33
            request = Request(url = url1, callback=self.parse)
34
            request.headers.setdefault("Referer", "www.themobilestore.in")
35
            listreq.append(request)
36
        return listreq
37
 
38
    def parse(self, response):
39
        site = response.url
40
        vatplustax = 0
41
        pos1 = pos2 = 0
42
        temp = ""
43
        pos1 = site.rfind('/')
44
        if pos1 != -1:
45
            temp = site[pos1+1:len(site)]
46
            #pos2 = site.rfind('/',0,pos1-1)
47
        #if pos2 > 0:
48
            #temp = site[pos2+1:len(site)]
49
        pos3 = temp.find('.')
50
        temp1 = temp[pos3:len(temp)]
51
        name = temp.replace(temp1,"")         
52
        hxs = HtmlXPathSelector(response)
53
        prices = hxs.select('//div[@id ="priceComp"]//tr[2]/td[3]/span/text()')
54
 
55
        da = DataHelper()
56
        for price in prices:
57
             name = str(name).strip()
58
             price = price.extract()
59
             price = str(price).strip()
60
             price = price.replace("Rs", "")
61
             price = price.replace("/", "")
62
             price = price.replace("-", "")
63
             price = price.replace(".", "")
64
             shown_pr = int(price)
65
             final_pr = shown_pr + vatplustax
66
             da.add_new_mobstorephone(name,shown_pr,final_pr)
67
             print name
68
             print final_pr
69
             print "\n"
70
    '''          
71
        for i in items:
72
            str1 = str(i['title']).strip() 
73
            print str1
74
            amnt = i['price'].replace(",","")
75
            amnt = amnt.replace("Rs", "")
76
            amnt = amnt.replace("/", "")
77
            amnt = amnt.replace("-", "")
78
            amnt = amnt.strip()
79
            vatplustax = 4*int(amnt)/100
80
            pr = int(amnt) + vatplustax 
81
            #print pr
82
            da.add_new_univerphone(str1,amnt,pr) 
83
        '''
84
SPIDER = mobstore_price()
85