Spaces:
Runtime error
Runtime error
| import streamlit as st | |
| import json | |
| from PIL import Image | |
| from io import BytesIO | |
| import base64 | |
| import requests | |
| def load_image_from_local(image_path, image_resize=None): | |
| image = Image.open(image_path) | |
| if isinstance(image_resize, tuple): | |
| image = image.resize(image_resize) | |
| return image | |
| def load_image_from_url(image_url, rgba_mode=False, image_resize=None, default_image=None): | |
| try: | |
| image = Image.open(requests.get(image_url, stream=True).raw) | |
| if rgba_mode: | |
| image = image.convert("RGBA") | |
| if isinstance(image_resize, tuple): | |
| image = image.resize(image_resize) | |
| except Exception as e: | |
| image = None | |
| if default_image: | |
| image = load_image_from_local(default_image, image_resize=image_resize) | |
| return image | |
| def image_to_base64(image_array): | |
| buffered = BytesIO() | |
| image_array.save(buffered, format="PNG") | |
| image_b64 = base64.b64encode(buffered.getvalue()).decode("utf-8") | |
| return f"data:image/png;base64, {image_b64}" | |
| def load_text(text_path): | |
| text = '' | |
| with open(text_path) as f: | |
| text = f.read() | |
| return text | |
| def load_json(json_path): | |
| jdata = '' | |
| with open(json_path) as f: | |
| jdata = json.load(f) | |
| return jdata | |
| def local_css(css_path): | |
| with open(css_path) as f: | |
| st.markdown(f'<style>{f.read()}</style>', unsafe_allow_html=True) | |
| def remote_css(css_url): | |
| st.markdown(f'<link href="{css_url}" rel="stylesheet">', unsafe_allow_html=True) | |
| def unique_list(seq): | |
| seen = set() | |
| seen_add = seen.add | |
| return [x for x in seq if not (x in seen or seen_add(x))] | |
| def pure_comma_separation(list_str, return_list=True): | |
| r = unique_list([item.strip() for item in list_str.lower().split(",") if item.strip()]) | |
| # r = list(set([x.strip() for x in list_str.strip().split(',') if len(x.strip()) > 0])) | |
| if return_list: | |
| return r | |
| return ", ".join(r) | |