repl.it
Python

No description

fork
loading
Files
  • main.py
  • static
  • templates
  • jsonRobot.py
  • scraped.json
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/home/and/testelynx/frontend-developer-challenge/flask_env/bin/python

# Comportamento:
#
# Para preencher a página com as informações dos produtos, você terá que consultar esta **[API](https://frontend-intern-challenge-api.iurykrieger.now.sh/products?page=1)** de forma paginada, sendo que cada página consultada retornará as informações de **8 produtos** e um **link para a próxima página**.
#
# Assim que obter os dados, você deverá implementar os seguintes pontos:
#
# [] Para cada **produto** retornado pela API, um **card de produto** com as
#    respectivas informações deve ser criado na grade de produtos;
#    -> Request a API, criar a grade de produtos com esse JSON, para cada página.
#
# [] Ao clicar no botão **Ainda mais produtos aqui!** a próxima página da API
#    deve ser consultada, gerando mais **8 produtos** na grade existente, abaixo
#    dos produtos já carregados pela primeira requisição;
#    -> Não irei por um paginador. Vou usar uma variável p/ o número da página
#       autoincrementar.
#
# [] O formulário de *newsletter* com o título **Compartilhe a novidade** deve
#    ter seus campos de *input* validados de acordo com o conteúdo (ex: O campo
#    de email deve conter um email válido);
#    -> type e pattern!
#

from flask import Flask, redirect, url_for, render_template, jsonify
import requests, json, os
from collections import namedtuple
# import jsonRobot

app = Flask(__name__)

def read_file(fname):
    with open(fname, "r+") as fi:
        print("# Reading file:\t {o}".format(o=fname))
        readed_per_lines = fi.readlines()
        fi.close()
    return 

def read_json(fname):
   with open(fname, "r") as fi:
        print("# Reading JSON file:\t {o}".format(o=fname))
        json_data = json.load(fi)
   pass
        
def create_file(fname):
    with open(fname, "wt+") as fi:
        print("# Creating file:\t {o}".format(o=fname))
        fi.write(str(data_text))
        fi.close()
    pass

###############################################################################
# Routes

@app.route('/')
def index():
   return render_template('index.html')

@app.route('/hello/<int:var>/')
def hello(var):
   return render_template("json.html", from_server='%s'%var)

@app.route('/products/<page>')
def products(page):
   this_page=int('%s'%page)
   bring_json_data(this_page)
   dict = {'phy': 50, 'che': 60, 'maths': 70}
   return render_template('index.html', data = dict, next_page=__next_page,)

# product_id
# product_name
# product_img
# product_oldprice
# product_price
# product_description
# product_installments   


###############################################################################
# Starting
if __name__ == '__main__':
    app.run(
        # host=,
        port=4000,
        debug=True,
        )