Subversion Repositories SmartDukaan

Rev

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

Rev 13754 Rev 13828
Line 1... Line 1...
1
import urllib2
1
import urllib2
2
from BeautifulSoup import BeautifulSoup
2
from BeautifulSoup import BeautifulSoup
3
import pymongo
3
import pymongo
4
import re
4
import re
-
 
5
from dtr.utils.utils import to_java_date
-
 
6
from datetime import datetime
5
 
7
 
6
asin_regex = r'/([A-Z0-9]{10})'
8
asin_regex = r'/([A-Z0-9]{10})'
7
con = None
9
con = None
8
bestSellers = []
10
bestSellers = []
-
 
11
now = datetime.now()
9
 
12
 
10
class __RankInfo:
13
class __RankInfo:
11
    
14
    
12
    def __init__(self, identifier, rank):
15
    def __init__(self, identifier, rank):
13
        self.identifier = identifier
16
        self.identifier = identifier
Line 86... Line 89...
86
        print x.identifier,
89
        print x.identifier,
87
        col = get_mongo_connection().Catalog.MasterData.find({'identifier':x.identifier.strip()})
90
        col = get_mongo_connection().Catalog.MasterData.find({'identifier':x.identifier.strip()})
88
        print "count sku",
91
        print "count sku",
89
        print '\t',
92
        print '\t',
90
        print len(list(col))
93
        print len(list(col))
91
        get_mongo_connection().Catalog.MasterData.update({'identifier':x.identifier.strip()}, {'$set' : {'rank':x.rank}}, multi=True)
94
        get_mongo_connection().Catalog.MasterData.update({'identifier':x.identifier.strip() }, {'$set' : {'rank':x.rank,'updatedOn':to_java_date(now)}}, multi=True)
92
        
95
        
93
def scrapeBestSellerTablets():
96
def scrapeBestSellerTablets():
94
    global bestSellers
97
    global bestSellers
95
    bestSellers = []
98
    bestSellers = []
96
    rank = 0
99
    rank = 0
Line 111... Line 114...
111
            rank = rank + 1
114
            rank = rank + 1
112
            r_info = __RankInfo(identifier,rank)
115
            r_info = __RankInfo(identifier,rank)
113
            bestSellers.append(r_info)
116
            bestSellers.append(r_info)
114
 
117
 
115
def resetRanks(category):
118
def resetRanks(category):
-
 
119
    oldRankedItems = get_mongo_connection().Catalog.MasterData.find({'rank':{'$gt':0},'source_id':1,'category':category})
-
 
120
    for item in oldRankedItems:
116
    get_mongo_connection().Catalog.MasterData.update({'category':category,'source_id':1}, {'$set' : {'rank':0}}, multi=True)
121
        get_mongo_connection().Catalog.MasterData.update({'_id':item['_id']}, {'$set' : {'rank':0,'updatedOn':to_java_date(now)}}, multi=True)
117
            
122
            
118
def main():
123
def main():
119
    scrapeBestSellerMobiles()
124
    scrapeBestSellerMobiles()
120
    if len(bestSellers) > 0:
125
    if len(bestSellers) > 0:
121
        resetRanks('Mobiles')
126
        resetRanks('Mobiles')