mgokg's picture
Create app.py
a936419 verified
raw
history blame
1.63 kB
import gradio as gr
import requests
from bs4 import BeautifulSoup
def parse_link(ort):
# Konstruiere die vollständige URL
url = f"https://vereine-in-deutschland.net/vereine/Bayern/{ort}"
try:
# Senden der Anfrage an die URL
response = requests.get(url)
response.raise_for_status() # Überprüfen, ob die Anfrage erfolgreich war
# Parse the HTML content using BeautifulSoup
soup = BeautifulSoup(response.content, 'html.parser')
# Finde den Link mit dem CSS-Selektor
link_element = soup.select_one('li.page-item:nth-child(8) > a:nth-child(1)')
if link_element and 'href' in link_element.attrs:
href = link_element['href']
# Extrahiere die letzten beiden Zeichen der URL
last_two_chars = href[-2:]
# Konvertiere die letzten beiden Zeichen in einen Integer
last_two_chars_int = int(last_two_chars)
return last_two_chars_int
else:
return "Link not found"
except Exception as e:
return str(e)
# Erstelle die Gradio-Schnittstelle
with gr.Blocks() as demo:
gr.Markdown("# Vereine in Bayern Parser")
ort_input = gr.Textbox(label="Ort", placeholder="Gib den Namen des Ortes ein")
output = gr.Number(label="Letzte beiden Zeichen der URL (als Integer)")
# Button zum Starten der Parsung
button = gr.Button("Parse Link")
# Verbinde den Button mit der Funktion
button.click(fn=parse_link, inputs=ort_input, outputs=output)
# Starte die Gradio-Anwendung
demo.launch()