# URL krativec
## Izdelava preprostega URL skrajševalca
Cilj te vaje je, da ustvarite preprost sistem za skrajševanje dolgih URL-jev, kot je [TinyUrl](https://tinyurl.com/app).
'long url' - dolg url, ki ga žeimo skrajšati
'short url' - kratka koda, ki poveže na "long url"
Če bomo svoj URL skrajševalnik gostili na platformi, kot je repl.it, ki uporablja dolge domene, lahko izgubimo nekaj funkcionalnosti krajšanja URL-jev zaradi dolžine domene. Vendar pa bi lahko rešili to težavo z nakupom kratke domene, kar bi omogočilo, da naš URL skrajševalnik deluje na krajši domeni.
**Ustvarjanje HTML obrazca**
Ustvarite enostaven HTML obrazec, kjer lahko uporabniki vnašajo dolge URL-je, ki jih želijo skrajšati.
**Generiranje kratkega URL-ja**
S pomočjo Pythona boste ustvarili funkcijo, ki bo dolg URL pretvorila v krajšo različico. To lahko storite tako, da generirate naključen niz znakov ali pa uporabite določen algoritem za skrajševanje.
Potem pa si pod tem naključnim nizom v slovar shraniti "dolg url".
**Povezava s "short url"**
Zapišite kodo, ki bo povezala krajšo različico z originalnim dolgim URL-jem.
```python=
#ne pozabi na ta način routiranja!
@app.route('/<short_url>')
def redirect_to_long_url(short_url):
print(short_url)
```
**Približna struktura**
```python=
# Uvoz potrebnih knjižnic
# Ustvarjanje Flask aplikacije
app = Flask(__name__)
# Slovar za shranjevanje preslikav med kratkimi in dolgimi URL-ji
slovar_preslikav = {} # primer vpisa {"AGKjf":"www.looong_url.com"}
# Funkcija za generiranje krajšega URL-ja
# Definicija poti za osnovno stran
@app.route('/')
def index():
# Vrnitev predloge za osnovno stran
# Definicija poti za skrajševanje URL-jev
@app.route('/shorten', methods=['POST'])
def shorten_url():
# Pridobitev dolgega URL-ja iz obrazca
# Generiranje krajšega URL-ja
# Shranjevanje preslikave krajšega in dolgega URL-ja
# Vrnitev predloge za osnovno stran s krajšim URL-jem
# Definicija poti za preusmeritev na dolgi URL
@app.route('/<short_url>')
def redirect_to_long_url(short_url):
# Preverjanje, ali je krajši URL v slovarju preslikav
# Preusmeritev na dolgi URL
# Zagon Flask aplikacije
if __name__ == "__main__":
app.run(debug=True)
```