import requests import streamlit as st def fetch_readme_content(): url = "https://raw.githubusercontent.com/zhimin-z/awesome-awesome-artificial-intelligence/main/README.md" response = requests.get(url) if response.status_code == 200: return response.text else: st.error("Failed to fetch README.md content from GitHub.") return "" class SearchApplication: def __init__(self): self.title = "Awesome Awesome Artificial Intelligence Search" self.set_page_config() st.header(self.title) self.query = st.text_input("Search", value="") st.caption( "This search toolkit is a user-friendly platform that enables efficient exploration and filtering of the comprehensive [Awesome Awesome Artificial Intelligence](https://github.com/zhimin-z/awesome-awesome-artificial-intelligence) list, which includes over 100 awesome lists about artificial intelligence, making it an indispensable resource for researchers, developers, and enthusiasts in the field." ) st.write("#") self.show_search_results() def set_page_config(self): st.set_page_config( page_title=self.title, page_icon="😎", layout="centered", ) def show_search_results(self): if self.query: st.write("#") readme_content = fetch_readme_content() if readme_content: search_results = [] lines = readme_content.split("\n") for line in lines: if self.query.lower() in line.lower(): search_results.append(line) num_search_results = len(search_results) st.write(f"A total of {num_search_results} matches found.") if num_search_results > 0: for result in search_results: st.write(result) else: st.write("No matches found.") if __name__ == "__main__": SearchApplication()