from bottle import route, run, view
from datetime import datetime as dt
from random import random
@route("/")
@view("predictions")
def index():
now = dt.now()
x = random()
return {
"date": f"{now.year}-{now.month}-{now.day}",
"predictions": [
"После обеда ожидайте неожиданного праздника.",
"Днём предостерегайтесь неожиданного праздника.",
"Утром ожидайте гостей из забытого прошлого.",
],
"special_date": x > 0.5,
"x": x,
}
@route("/api/forecasts")
def api_forecasts():
now = dt.now()
x = random()
return {
"date": f"{now.year}-{now.month}-{now.day}",
"prophecies": [
"После обеда ожидайте неожиданного праздника.",
"Днём предостерегайтесь неожиданного праздника.",
"После восхода ожидайте гостей из забытого прошлого.",
"После полудня ожидайте гостей из забытого прошлого.",
"После заката гостей из забытого прошлого.",
],
"special_date": x > 0.5,
"x": x,
}
run(
host="localhost",
port=8080,
autoload=True
)
# coding=utf-8
import random
times = ["утром", "днём", "вечером", "ночью", "после обеда", "перед сном"]
advices = ["ожидайте", "предостерегайтесь", "будьте открыты для"]
promises = ["гостей из забытого прошлого", "встреч со старыми знакомыми",
"неожиданного праздника", "приятных перемен"]
def generate_prophecies(total_num=5, num_sentences=3):
prophecies = []
i = 0
while i < total_num:
j = 0
forecast = ""
while j < num_sentences:
t = random.choice(times)
a = random.choice(advices)
p = random.choice(promises)
full_sentence = t.title() + " " + a + " " + p + "."
if j != num_sentences - 1:
full_sentence = full_sentence + " "
forecast = forecast + full_sentence
j = j + 1
prophecies.append(forecast)
i = i + 1
return prophecies
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<link rel="stylesheet" type="jquery" href="jquery-3.4.1.min.js">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<title>2</title>
</head><body>
<div class="container">
<h1>Что день {{ date }} готовит</h1>
% if special_date:
<h2>Text</h2>
% end
% for pred in predictions:
<p>{{ pred }}</p>
% end
</div>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
</body>
<script language="javascript">
console.log( {{ x }} );
</script>
</html>
<div class="row">
<div class="col" id="p-2">
function set_content_in_divs(paragraphs) {
$.each(paragraphs, function(i, d) {
p = $("#p-" +i)
p.html("<p>" + d + "</p>")
})
</div>
<div class="row">
<div class="col" id="p-3">
</div>