Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

#!/usr/bin/python
# coding: ascii
from elixir import *
from shop2020.model.v1.catalog.impl import DataService
from shop2020.model.v1.catalog.impl.DataService import Amazonlisted
from shop2020.model.v1.catalog.script import AmazonAsyncScraper
from shop2020.config.client.ConfigClient import ConfigClient

config_client = ConfigClient()
host = config_client.get_property('staging_hostname')

amScraper = AmazonAsyncScraper.Products("AKIAII3SGRXBJDPCHSGQ", "B92xTbNBTYygbGs98w01nFQUhbec1pNCkCsKVfpg", "AF6E3O0VE0X4D")
marketplaceid = "A21TJRUUN4KGV"
DataService.initialize(db_hostname=host)

def run():
    exceptionList = []
    amazonItems = session.query(Amazonlisted).all()
    for amazonItem in amazonItems:
        skus = []
        skus.append(str(amazonItem.itemId))
        try:
            productAttr = amScraper.get_product_attributes_for_sku(marketplaceid, skus)
            print "productAttr ",productAttr
            if productAttr is None:
                raise
        except:
            exceptionList.append(amazonItem.itemId)
            continue
        amazonItem.packagingHeight = productAttr.get('height')
        amazonItem.packagingLength = productAttr.get('length')
        amazonItem.packagingWidth = productAttr.get('width')
        amazonItem.packagingWeight = productAttr.get('weight')
        session.commit()
        
    for itemId in exceptionList:
        print itemId
        
        
    

def main():
    try:
        run()
    finally:
        session.close()

if __name__=='__main__':
    main()