Spaces:
Build error
Build error
| import streamlit as st | |
| import smtplib | |
| from email.message import EmailMessage | |
| import http.client | |
| import requests | |
| # SMTP Example (Simplified) | |
| def smtp_client(server, port, from_email, to_email, subject, message): | |
| msg = EmailMessage() | |
| msg.set_content(message) | |
| msg['Subject'] = subject | |
| msg['From'] = from_email | |
| msg['To'] = to_email | |
| try: | |
| with smtplib.SMTP(server, port) as smtp: | |
| smtp.send_message(msg) | |
| return "Email sent successfully!" | |
| except Exception as e: | |
| return f"Failed to send email: {e}" | |
| # HTTP Example | |
| def http_client(url): | |
| try: | |
| response = requests.get(url) | |
| return response.text[:500] # Return the first 500 characters for brevity | |
| except Exception as e: | |
| return f"Failed to retrieve the URL: {e}" | |
| # Streamlit UI | |
| st.title("Internet Communication Protocols Demo π") | |
| # SMTP Section | |
| st.header("SMTP Demo π§") | |
| smtp_server = st.text_input("SMTP Server", value="smtp.example.com") | |
| smtp_port = st.text_input("SMTP Port", value="587") | |
| from_email = st.text_input("From Email", value="from@example.com") | |
| to_email = st.text_input("To Email", value="to@example.com") | |
| subject = st.text_input("Subject", value="Test Email") | |
| message = st.text_area("Message", value="This is a test email.") | |
| if st.button("Send Email"): | |
| result = smtp_client(smtp_server, smtp_port, from_email, to_email, subject, message) | |
| st.success(result) | |
| # HTTP Section | |
| st.header("HTTP Demo π") | |
| url = st.text_input("URL to fetch", value="http://example.com") | |
| if st.button("Fetch URL"): | |
| result = http_client(url) | |
| st.text_area("Response", value=result, height=250) |