def index(): # if search, return result form = SearchForm() if form.validate_on_submit(): productsToShow = products.get_search_products(form.search.data) # else, return products from selected category else: productsToShow = products.get_products() categories.create_categories_table() products.create_products_table() category = categories.get_category() mainCategories = categories.get_main_categories(0) subcategories = categories.get_subcategories() numberOfMainCategories = categories.get_number_of_main_categories() numberOfSubcategories = categories.get_number_of_subcategories() numberOfProducts = products.get_number_of_products() numberOfProductsOfCategory = products.get_number_of_products_of_category() return render_template( 'index.html', form=form, numberOfProductsOfCategory=numberOfProductsOfCategory, numberOfProducts=numberOfProducts, products=productsToShow, subcategories=subcategories, mainCategories=mainCategories, numberOfMainCategories=numberOfMainCategories, numberOfSubcategories=numberOfSubcategories, category=category)
def arg_products(args): print( f"\n > La oss se om vi kan finne produktene på side {args.products} i produktkatalogen..." ) page = args.products products = get_products() start = (page - 1) * 20 if page < 1 or type(page) is not int: print("\n > Beklager, sidetall starter fra 1 og må være et heltall") elif start > len(products): print( f"\n Beklager, vi har bare { math.floor(len(products) / 20)} produktsider!" ) else: print(f"\n > Her er produktene på side {page}:\n") for product in products[start:start + 20]: print_product(product) if (page * 20 + 20) < len(products): print( "\n > Se flere produkter? Gå til neste produktside --products" + f" { page + 1 } (totalt { math.floor(len(products) / 20)} sider) \n" ) else: print(f"\n > Dette var siste produktside! \n")
def arg_search(args): print( f"\n > Vi skal se om vi kan finne produkt som matcher søkeordet ditt '{args.search}'..." ) search = args.search products = get_products() result = [ product for product in products if str(search).lower() in product["title"].lower() or str(search).lower() in product["description"].lower() ] if len(result) > 0: amount = len(result) print("\n > YAY! Jeg fikk " + (" et treff " if amount == 1 else f"{amount} treff ") + "med ditt søkeord '" + search + "'\n") for product in result: print_product(product) print( "\n > (Søk tok utgangspunkt produktets beskrivelse og tittel) \n") else: print( "\n > Beklager, jeg fant ikke noe produkt med å søke på {args.search} :(" )
def get_product_prices(): item_prices = {} itemIDs = get_products() for itemID in itemIDs: item_prices[itemID] = load_obj(itemID) return (item_prices)
def search_products(ctx, page, per_page, where, where_not, order, q, store_id): """ flag: 'is_dead', 'is_discontinued', 'has_value_added_promotion', 'has_limited_time_offer', 'has_bonus_reward_miles', 'is_seasonal', 'is_vqa', 'is_ocb', 'is_kosher' field: 'id', 'price_in_cents', 'regular_price_in_cents', 'limited_time_offer_savings_in_cents', 'limited_time_offer_ends_on', 'bonus_reward_miles', 'bonus_reward_miles_ends_on', 'package_unit_volume_in_milliliters', 'total_package_units', 'total_package_volume_in_milliliters', 'volume_in_milliliters', 'alcohol_content', 'price_per_liter_of_alcohol_in_cents', 'price_per_liter_in_cents', 'inventory_count', 'inventory_volume_in_milliliters', 'inventory_price_in_cents', 'released_on' """ result = products.get_products(access_key, page, per_page, where, where_not, order, q, store_id) TableWriter().output(result)
def arg_all(args): products = get_products() print("\n > Jeg skal finne frem alle produktene for deg :)") sleep(1) print(f"\nHer er alle produkter ({len(products)}):") for product in products: print_product(product) print("\n > Det var alt! \n")
def extract(): url=request.form['url'] if 'burlesquedesign.com/' in url: if 'collections/' in url: productsList, seo = get_products(url) sliceVal = len('collections/') category = url[url.index('collections/')+sliceVal:] return render_template("category.html", category=category, productsList=productsList, url=url, seo=seo) elif 'products/' in url: productDetails, seo, relatedProducts = get_product(url) return render_template("product.html", productDetails=productDetails, url=url, seo=seo, relatedProducts=relatedProducts) else: return render_template("error.html") else: return render_template("error.html")
def arg_id(args): print( f"\n > La oss se om vi kan finne produkt med id {args.id} i produktkatalogen..." ) products = get_products() results = [ product for product in products if product["url"] is not None and str(args.id) in product["url"] ] if len(results) > 0: print(f"\n > Yay - vi fant produkt med id {args.id}\n") for product in results: print_product(product) print("\n") else: print(f"\n > Beklager - fant ikke produkt med id {args.id}.\n")
def download_prices(): prices = {} productIDs = get_products() item_prices = {} lowest_download = {"time": 1000000.0, "item": "None"} highest_download = {"time": 0.0, "item": "None"} lowest_save = {"time": 1000000.0, "item": "None"} highest_save = {"time": 0.0, "item": "None"} for number, item in enumerate(productIDs): item_time = time.perf_counter() item_price = get_item_price.request(item) if item_price["success"] == True: item_prices[item] = item_price["prices"]["sell"] downloaded_time = time.perf_counter() else: print("Occurred Error while loading the price of {}. Errortype: {}.".format(item, item_price)) exit() print(f"Got price for {item}".format(item=item)) save_time_start = time.perf_counter() try: save_obj(item_prices[item], item) prices[item] = item_prices[item] except KeyError: pass save_time_stop = time.perf_counter() if downloaded_time - item_time < lowest_download["time"]: lowest_download["time"] = downloaded_time - item_time lowest_download["item"] = item if downloaded_time - item_time > highest_download["time"]: highest_download["time"] = downloaded_time - item_time highest_download["item"] = item if save_time_stop - save_time_start < lowest_save["time"]: lowest_save["time"] = save_time_stop - save_time_start lowest_save["item"] = item if save_time_stop - save_time_start > highest_save["time"]: highest_save["time"] = save_time_stop - save_time_start highest_save["item"] = item return([number, lowest_download, highest_download, lowest_save, highest_save, prices])
def on_start(self): self._data = products.get_products()
def index(): return render_template('index.html', products=get_products())
def index(): products = get_products() html = bedu_travels_template(products) return template(html)
raw_company = en.get_endpoint('organization/'+org)[0] company = en.Entity(raw_company) return render_template('entity.html', entity=company) @app.route('/product/<prod>', methods=["POST"]) def product(prod): if prod is None: prod = request.form["company"] raw_company = en.get_endpoint('product/'+prod)[0] company = en.Entity(raw_company) return render_template('entity.html', entity=company) @app.route('/companies') def companies(): return render_template('companies.html', entities=companies[:10]) @app.route('/products') def products(): return render_template('companies.html', entities=products[:10]) @app.route('/entity/<what>/<organization>') def entity(what, organization): return json.dumps(en.get_individual_entity(what+'/'+organization)) if __name__ == "__main__": #companies = get_endpoint('organizations', 1, organization_types="company") #print(companies) companies = cl.get_companies() products = pd.get_products() app.run(debug=True)
def home() -> str: response = render_template("home.html", products=get_products()) return response
def products(): page = int(request.args.get("page", 1)) next_page = page + 1 return render_template("products.html", products=get_products(page=page), next_page=next_page)