basic app
This commit is contained in:
41
app.py
Normal file
41
app.py
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
from flask import Flask, render_template, request
|
||||||
|
import random
|
||||||
|
import os
|
||||||
|
import time
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
|
||||||
|
# Function to generate random seed using system entropy
|
||||||
|
def generate_seed_from_entropy():
|
||||||
|
seed = int((time.time() * 1000) % (2**32 - 1)) + os.getpid() + random.randint(0, 2**16 - 1)
|
||||||
|
return seed
|
||||||
|
|
||||||
|
# Function to generate random numbers based on lottery rules
|
||||||
|
def generate_lottery_numbers(game_type):
|
||||||
|
seed = generate_seed_from_entropy()
|
||||||
|
random.seed(seed)
|
||||||
|
|
||||||
|
if game_type == 'euromillions':
|
||||||
|
numbers = sorted(random.sample(range(1, 51), 5))
|
||||||
|
lucky_stars = sorted(random.sample(range(1, 13), 2))
|
||||||
|
return {'numbers': numbers, 'lucky_stars': lucky_stars}
|
||||||
|
elif game_type == 'lotto':
|
||||||
|
numbers = sorted(random.sample(range(1, 48), 6))
|
||||||
|
return {'numbers': numbers}
|
||||||
|
elif game_type == 'eurodreams':
|
||||||
|
numbers = sorted(random.sample(range(1, 41), 6))
|
||||||
|
dream_number = random.randint(1, 5)
|
||||||
|
return {'numbers': numbers, 'dream_number': dream_number}
|
||||||
|
else:
|
||||||
|
return {'error': 'Invalid game type'}
|
||||||
|
|
||||||
|
@app.route('/', methods=['GET', 'POST'])
|
||||||
|
def index():
|
||||||
|
result = None
|
||||||
|
if request.method == 'POST':
|
||||||
|
game_type = request.form.get('game_type')
|
||||||
|
result = generate_lottery_numbers(game_type)
|
||||||
|
return render_template('index.html', result=result)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
app.run(debug=True)
|
||||||
34
templates/index.html
Normal file
34
templates/index.html
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<title>Lottery Number Generator</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Lottery Number Generator</h1>
|
||||||
|
<form method="POST">
|
||||||
|
<label for="game_type">Select Game:</label>
|
||||||
|
<select name="game_type" id="game_type" required>
|
||||||
|
<option value="euromillions">EuroMillions</option>
|
||||||
|
<option value="euromillions_plus">EuroMillions Plus</option>
|
||||||
|
<option value="lotto">Lotto</option>
|
||||||
|
<option value="lotto_plus">Lotto Plus</option>
|
||||||
|
<option value="eurodreams">EuroDreams</option>
|
||||||
|
</select>
|
||||||
|
<br><br>
|
||||||
|
<button type="submit">Generate Numbers</button>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
{% if result %}
|
||||||
|
<h2>Generated Numbers:</h2>
|
||||||
|
<p>Numbers: {{ result.numbers }}</p>
|
||||||
|
{% if result.lucky_stars %}
|
||||||
|
<p>Lucky Stars: {{ result.lucky_stars }}</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if result.plus %}
|
||||||
|
<p>Plus Option: Yes</p>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Reference in New Issue
Block a user