IvT-DS commited on
Commit
51e9da0
1 Parent(s): 950be59

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -6
app.py CHANGED
@@ -1,3 +1,4 @@
 
1
  import streamlit as st
2
  import numpy as np
3
  import pandas as pd
@@ -6,8 +7,6 @@ df = pd.read_csv("kino_mail_proc.csv")
6
  random_digits = np.random.choice(len(df), size=10, replace=False)
7
 
8
 
9
-
10
-
11
  # Создание списка уникальных стран
12
  all_countries = set()
13
  for countries_list in df["country"].dropna().str.split(", "):
@@ -47,7 +46,7 @@ if not df.empty:
47
  min_year = int(df["year1"].min())
48
  max_year = int(df["year1"].max())
49
 
50
- # Если есть хотя бы два разных года, отображаем слайдер в боковой панели
51
  if min_year < max_year:
52
  selected_year_range = st.sidebar.slider(
53
  "Выберите диапазон лет выпуска",
@@ -71,11 +70,22 @@ if st.button("Выбрать случайно") and len(df) > 0:
71
  for i in random_indices:
72
  col1, col2 = st.columns([1, 3])
73
  with col1:
74
- st.image(df["poster"][i])
 
 
 
 
 
 
 
 
 
 
 
75
 
76
  with col2:
77
 
78
- # Используем loc для безопасного доступа к элементам DataFrame
79
  title = df.loc[df.index == i, "title"].iloc[0]
80
  country = df.loc[df.index == i, "country"].iloc[0]
81
  year = df.loc[df.index == i, "year1"].iloc[0]
@@ -83,7 +93,7 @@ if st.button("Выбрать случайно") and len(df) > 0:
83
  cast = df.loc[df.index == i, "cast1"].iloc[0]
84
  description = df.loc[df.index == i, "description"].iloc[0]
85
 
86
-
87
  st.markdown(
88
  f"<span style='font-weight:bold; font-size:22px;'>Название сериала:</span> <span style='font-size:20px;'>«{title}»</span>",
89
  unsafe_allow_html=True,
 
1
+ import os
2
  import streamlit as st
3
  import numpy as np
4
  import pandas as pd
 
7
  random_digits = np.random.choice(len(df), size=10, replace=False)
8
 
9
 
 
 
10
  # Создание списка уникальных стран
11
  all_countries = set()
12
  for countries_list in df["country"].dropna().str.split(", "):
 
46
  min_year = int(df["year1"].min())
47
  max_year = int(df["year1"].max())
48
 
49
+ # Если есть хотя бы два разных года, отображаем слайдер
50
  if min_year < max_year:
51
  selected_year_range = st.sidebar.slider(
52
  "Выберите диапазон лет выпуска",
 
70
  for i in random_indices:
71
  col1, col2 = st.columns([1, 3])
72
  with col1:
73
+ # Проверяем, является ли значение в df["poster"][i] ссылкой или путем к файлу
74
+ poster_path_or_url = df["poster"][i]
75
+ if poster_path_or_url.startswith("http"):
76
+ # Если это URL, используем его напрямую
77
+ st.image(poster_path_or_url)
78
+ else:
79
+ # Если это путь к файлу, используем placeholder изображение или сообщение
80
+ placeholder_path = "img/v2/nopicture/308x462.png"
81
+ if os.path.exists(placeholder_path):
82
+ st.image(placeholder_path)
83
+ else:
84
+ st.write("Изображение не найдено")
85
 
86
  with col2:
87
 
88
+ # Используйте loc для безопасного доступа к элементам DataFrame
89
  title = df.loc[df.index == i, "title"].iloc[0]
90
  country = df.loc[df.index == i, "country"].iloc[0]
91
  year = df.loc[df.index == i, "year1"].iloc[0]
 
93
  cast = df.loc[df.index == i, "cast1"].iloc[0]
94
  description = df.loc[df.index == i, "description"].iloc[0]
95
 
96
+ # Заголовки полей жирным шрифтом
97
  st.markdown(
98
  f"<span style='font-weight:bold; font-size:22px;'>Название сериала:</span> <span style='font-size:20px;'>«{title}»</span>",
99
  unsafe_allow_html=True,