-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadozioni.py
114 lines (98 loc) ยท 4.44 KB
/
adozioni.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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
import tkinter as tk
from tkinter import filedialog
class Adozione:
def __init__(self, tipo_animale, razza, nome, descrizione, contatti, foto):
self.tipo_animale = tipo_animale
self.razza = razza
self.nome = nome
self.descrizione = descrizione
self.contatti = contatti
self.foto = foto
def to_html(self):
foto_html = ""
for foto in self.foto:
if foto.startswith("http"):
foto_html += f'<img src="{foto}" alt="Foto di {self.nome}" style="max-width: 300px;"><br>'
else:
foto_html += f'<img src="file://{foto}" alt="Foto di {self.nome}" style="max-width: 300px;"><br>'
return f'''
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dettagli Adozione</title>
<style>
body {{
font-family: Arial, sans-serif;
margin: 0;
padding: 20px;
background-color: #f5f5f5;
}}
.container {{
max-width: 600px;
margin: 0 auto;
background-color: #fff;
padding: 20px;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}}
h1 {{
text-align: center;
color: #333;
}}
p {{
margin-bottom: 15px;
}}
img {{
display: block;
margin: 0 auto;
}}
</style>
</head>
<body>
<div class="container">
<h1>๐พ Dettagli Adozione ๐พ</h1>
<p><strong>๐ถ Tipo Animale:</strong> {self.tipo_animale}</p>
<p><strong>๐ถ Razza:</strong> {self.razza}</p>
<p><strong>๐พ Nome:</strong> {self.nome}</p>
<p><strong>๐ฌ Descrizione:</strong> {self.descrizione}</p>
<p><strong>๐ Info e Contatti:</strong> {self.contatti}</p>
<p><strong>๐ธ Foto:</strong></p>
{foto_html}
</div>
</body>
</html>
'''
def seleziona_immagini():
root = tk.Tk()
root.withdraw() # Nasconde la finestra principale di tkinter
# Apre una finestra di dialogo per selezionare i file immagine
file_path = filedialog.askopenfilenames(title="Seleziona le immagini", filetypes=[("Immagini", "*.jpg *.jpeg *.png *.gif")])
# Trasforma il percorso dei file in una lista di stringhe
file_list = list(file_path)
return file_list
def main():
print("Benvenuto nel modulo di adozione!")
tipo_animale = input("Seleziona il tipo di animale (cane o gatto): ").lower()
if tipo_animale not in ['cane', 'gatto']:
print("Tipo di animale non valido. Si prega di inserire 'cane' o 'gatto'.")
return
razza = input(f"Inserisci la razza del {tipo_animale}: ")
nome = input(f"Inserisci il nome del {tipo_animale}: ")
descrizione = input("Inserisci una breve descrizione: ")
contatti = input("Inserisci informazioni e contatti per l'adozione: ")
print("Seleziona le immagini dell'animale:")
foto_locali = seleziona_immagini()
foto_online = input("Inserisci URL delle foto separate da virgola (se disponibili): ").split(',')
foto = foto_online + foto_locali
adozione = Adozione(tipo_animale, razza, nome, descrizione, contatti, foto)
# Chiediamo all'utente di inserire il nome del file per il salvataggio
nome_file = input("Inserisci il nome del file per il salvataggio (senza estensione): ")
nome_file += ".html" # Aggiungiamo l'estensione .html al nome del file
# Creazione del file HTML con encoding UTF-8
with open(nome_file, "w", encoding="utf-8") as file:
file.write(adozione.to_html())
print(f"๐ Dettagli dell'adozione sono stati salvati in '{nome_file}' ๐")
if __name__ == "__main__":
main()