Spaces:
Running
Running
| import streamlit as st | |
| import requests | |
| from PIL import Image | |
| from io import BytesIO | |
| def download_image(url): | |
| response = requests.get(url) | |
| img = Image.open(BytesIO(response.content)) | |
| return img | |
| st.title('Image Downloader') | |
| url = st.text_input('Enter the image URL') | |
| submit = st.button('Submit') | |
| if url and submit: | |
| try: | |
| image = download_image(url) | |
| st.image(image, caption='Download Image', use_column_width=True) | |
| # Convert image to bytes | |
| img_byte_arr = BytesIO() | |
| image.save(img_byte_arr, format='PNG') | |
| img_byte_arr = img_byte_arr.getvalue() | |
| # Add download button | |
| st.download_button( | |
| label="Download Image", | |
| data=img_byte_arr, | |
| file_name='downloaded_image.png', | |
| mime='image/png' | |
| ) | |
| except Exception as e: | |
| st.error(f'Error: {e}') |