Subversion Repositories SmartDukaan

Rev

Rev 13978 | Rev 14133 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 13978 Rev 14127
Line 2... Line 2...
2
from dtr.utils.utils import to_java_date
2
from dtr.utils.utils import to_java_date
3
from datetime import datetime, timedelta
3
from datetime import datetime, timedelta
4
from dtr.utils import AmazonPriceOnlyScraper
4
from dtr.utils import AmazonPriceOnlyScraper
5
 
5
 
6
con = None
6
con = None
7
now = datetime.now()
-
 
8
scraperAmazon = AmazonPriceOnlyScraper.AmazonScraper()
7
scraperAmazon = AmazonPriceOnlyScraper.AmazonScraper()
9
print to_java_date(now)
-
 
10
 
8
 
11
 
9
 
12
def get_mongo_connection(host='localhost', port=27017):
10
def get_mongo_connection(host='localhost', port=27017):
13
    global con
11
    global con
14
    if con is None:
12
    if con is None:
Line 19... Line 17...
19
            print e
17
            print e
20
            return None
18
            return None
21
    return con
19
    return con
22
 
20
 
23
def scrapeAmazon():
21
def scrapeAmazon():
24
    amazonBestSellers = list(get_mongo_connection().Catalog.MasterData.find({'rank':{'$gt':0},'source_id':1}))
22
    amazonBestSellers = list(get_mongo_connection().Catalog.MasterData.find({'rank':{'$gt':0}}))
25
    for data in amazonBestSellers:
23
    for data in amazonBestSellers:
-
 
24
        if data['source_id'] !=1:
-
 
25
            continue
26
        inStock = 0
26
        inStock = 0
27
        print str(data['identifier'])
27
        print str(data['identifier'])
28
        if data['identifier'] is None or len(data['identifier'].strip())==0:
28
        if data['identifier'] is None or len(data['identifier'].strip())==0:
29
            print "continue"
29
            print "continue"
30
            continue
30
            continue
31
        
31
        
32
        try:
32
        try:
33
            if data['priceUpdatedOn'] > to_java_date(now - timedelta(minutes=5)):
33
            if data['priceUpdatedOn'] > to_java_date(datetime.now() - timedelta(minutes=5)):
34
                print "sku id is already updated",data['_id'] 
34
                print "sku id is already updated",data['_id'] 
35
                continue
35
                continue
36
        except:
36
        except:
37
            pass
37
            pass
38
        
38
        
Line 44... Line 44...
44
        if lowestPrice > 0:
44
        if lowestPrice > 0:
45
            inStock = 1
45
            inStock = 1
46
        print lowestPrice
46
        print lowestPrice
47
        print inStock
47
        print inStock
48
        if lowestPrice > 0:
48
        if lowestPrice > 0:
49
            get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice,'updatedOn':to_java_date(now),'priceUpdatedOn':to_java_date(now),'in_stock':inStock}}, multi=True)
49
            get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice,'updatedOn':to_java_date(datetime.now()),'priceUpdatedOn':to_java_date(datetime.now()),'in_stock':inStock}}, multi=True)
50
            get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice , 'in_stock':inStock}}, multi=True)
50
            get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice , 'in_stock':inStock}}, multi=True)
51
        else:
51
        else:
52
            get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'updatedOn':to_java_date(now),'in_stock':inStock,'priceUpdatedOn':to_java_date(now)}}, multi=True)
52
            get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'updatedOn':to_java_date(datetime.now()),'in_stock':inStock,'priceUpdatedOn':to_java_date(datetime.now())}}, multi=True)
53
            get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'in_stock':inStock}}, multi=True)
53
            get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'in_stock':inStock}}, multi=True)
54
            
54
            
55
        try:
55
        try:
56
            recomputeDeal(data['skuBundleId'])
56
            recomputeDeal(data['skuBundleId'])
57
        except:
57
        except: