Esempio n. 1
0
def parsexlsdata(file):
        from aplikace.models import Product
        from openpyxl import load_workbook
        import os
        wb = load_workbook(file)
        ws = wb.active
        i=0
        for row in ws.iter_rows():
            i=i+1
            if i > 4:
                #print row
                rowcvs=""
                #i=
                #for cell in row:
                data=Product.find_by_Obj(row[1].value)
                if not data :
                    if row[4].value == 'na dotaz':
                        u=Product(UID=row[0].value,Obj=row[1].value,Popis=row[2].value,Skupina=row[3].value,CenaProdej=0,MJ=row[5].value)
                    else:
                        u=Product(UID=row[0].value,Obj=row[1].value,Popis=row[2].value,Skupina=row[3].value,CenaProdej=row[4].value,MJ=row[5].value)
                    db.session.add(u)
                else:
                    data.UID=row[0].value
                    data.Obj=row[1].value
                    data.Popis=row[2].value
                    data.Skupina=row[3].value
                    if row[4].value == 'na dotaz':
                        data.CenaProdej=0
                    else:
                        data.CenaProdej=row[4].value
                    data.MJ=row[5].value
                    data.update(commit=False)

        os.remove(file)
        db.session.commit()
Esempio n. 2
0
def data_web_update():

    from webb import webb
    from aplikace.models import Product
    #    from locale import atof
    import re
    id = 0
    from html_table_parser import HTMLTableParser
    for polozka in Product.notKL():
        url = "http://www.vskprofi.cz/vyhledavani?type=sku&search=" + polozka.Obj + "&sku=OK"
        page = webb.download_page(url)
        p = HTMLTableParser()
        p.feed(page.decode('utf-8'))
        #print(p.tables)
        ar = p.tables
        try:
            data = Product.find_by_Obj(polozka.Obj)
            for i in range(6, 10):

                if re.search('technical-data', ar[0:1][0][1][i]):
                    data.TL = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
                if re.search('product-lists', ar[0:1][0][1][i]):
                    data.KL = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
                if re.search('pics', ar[0:1][0][1][i]):
                    data.Foto = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
            data.sklad = ar[0:1][0][1][3]
            if ar[0:1][0][1][11]:
                data.Poznamka = ar[0:1][0][1][11]
            #print data.Obj
            data.update(commit=False)
            id = id + 1
            if id % 100 == 0:
                print "aktualizuji data"
                db.session.commit()


#        for i in ar[0:1][0][1]:db.session.commit()rint
#                print(i)
#print(float(re.split(" ", ar[0:1][0][1][4])[0].replace(".","").replace(",",".")))

        except:

            print "Chyba" + str(id) + " " + polozka.Obj
            db.session.commit()
            #data_web_update.delay()

    db.session.commit()
    return True
Esempio n. 3
0
def data_web_update():

    from webb import webb
    from aplikace.models import Product
#    from locale import atof
    import re
    id=0
    from html_table_parser import HTMLTableParser
    for polozka in Product.notKL():
        url="http://www.vskprofi.cz/vyhledavani?type=sku&search=" + polozka.Obj + "&sku=OK"
        page = webb.download_page(url)
        p = HTMLTableParser()
        p.feed(page.decode('utf-8'))
        #print(p.tables)
        ar=p.tables
        try:
            data=Product.find_by_Obj(polozka.Obj)
            for i in range(6,10):

                if re.search('technical-data',ar[0:1][0][1][i]):
                    data.TL = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
                if re.search('product-lists',ar[0:1][0][1][i]):
                    data.KL = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
                if re.search('pics',ar[0:1][0][1][i]):
                    data.Foto = ar[0:1][0][1][i]
                    #print ar[0:1][0][1][i]
            data.sklad = ar[0:1][0][1][3]
            if ar[0:1][0][1][11]:
                data.Poznamka = ar[0:1][0][1][11]
            #print data.Obj
            data.update(commit=False)
            id=id+1
            if  id % 100 == 0:
                print "aktualizuji data"
                db.session.commit()
#        for i in ar[0:1][0][1]:db.session.commit()rint
#                print(i)
            #print(float(re.split(" ", ar[0:1][0][1][4])[0].replace(".","").replace(",",".")))

        except:

            print "Chyba" + str(id) + " " + polozka.Obj
            db.session.commit()
            #data_web_update.delay()
            
    db.session.commit()
    return True
Esempio n. 4
0
def parsexlsdata(file):
    from aplikace.models import Product
    from openpyxl import load_workbook
    import os
    wb = load_workbook(file)
    ws = wb.active
    i = 0
    for row in ws.iter_rows():
        i = i + 1
        if i > 4:
            #print row
            rowcvs = ""
            #i=
            #for cell in row:
            data = Product.find_by_Obj(row[1].value)
            if not data:
                if row[4].value == 'na dotaz':
                    u = Product(UID=row[0].value,
                                Obj=row[1].value,
                                Popis=row[2].value,
                                Skupina=row[3].value,
                                CenaProdej=0,
                                MJ=row[5].value)
                else:
                    u = Product(UID=row[0].value,
                                Obj=row[1].value,
                                Popis=row[2].value,
                                Skupina=row[3].value,
                                CenaProdej=row[4].value,
                                MJ=row[5].value)
                db.session.add(u)
            else:
                data.UID = row[0].value
                data.Obj = row[1].value
                data.Popis = row[2].value
                data.Skupina = row[3].value
                if row[4].value == 'na dotaz':
                    data.CenaProdej = 0
                else:
                    data.CenaProdej = row[4].value
                data.MJ = row[5].value
                data.update(commit=False)

    os.remove(file)
    db.session.commit()