mgokg commited on
Commit
62040f2
·
verified ·
1 Parent(s): e4fe4ea

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -8
app.py CHANGED
@@ -1,21 +1,34 @@
1
  import gradio as gr
2
  from googlesearch import search
 
 
3
 
4
  def google_search(query):
5
  try:
6
- # Führt die Suche durch und gibt nur das erste Ergebnis zurück
7
- top_result = next(search(query, num_results=1))
8
- return top_result
9
- except StopIteration:
10
- return "Keine Ergebnisse gefunden."
 
 
 
 
 
 
 
 
 
 
 
 
11
 
12
  demo = gr.Interface(
13
  fn=google_search,
14
  inputs=gr.Textbox(lines=2, placeholder="Geben Sie Ihre Suchanfrage ein..."),
15
  outputs="text",
16
- title="Top Google-Suchergebnis",
17
- description="Geben Sie eine Suchanfrage ein und erhalten Sie das erste Google-Suchergebnis."
18
  )
19
 
20
  demo.launch()
21
-
 
1
  import gradio as gr
2
  from googlesearch import search
3
+ import requests
4
+ from bs4 import BeautifulSoup
5
 
6
  def google_search(query):
7
  try:
8
+ # Führt die Suche durch und erhält das erste Ergebnis
9
+ for result in search(query, num_results=1):
10
+ url = result
11
+ break
12
+
13
+ # Holt den Inhalt der Webseite
14
+ response = requests.get(url)
15
+ soup = BeautifulSoup(response.text, 'html.parser')
16
+
17
+ # Extrahiert den Titel und die Beschreibung
18
+ title = soup.title.string if soup.title else "Kein Titel gefunden"
19
+ description = soup.find('meta', attrs={'name': 'description'})
20
+ description = description['content'] if description else "Keine Beschreibung gefunden"
21
+
22
+ return f"Titel: {title}\nBeschreibung: {description}\nURL: {url}"
23
+ except Exception as e:
24
+ return f"Ein Fehler ist aufgetreten: {str(e)}"
25
 
26
  demo = gr.Interface(
27
  fn=google_search,
28
  inputs=gr.Textbox(lines=2, placeholder="Geben Sie Ihre Suchanfrage ein..."),
29
  outputs="text",
30
+ title="Top Google-Suchergebnis mit Snippet",
31
+ description="Geben Sie eine Suchanfrage ein und erhalten Sie das erste Google-Suchergebnis mit Titel und Beschreibung."
32
  )
33
 
34
  demo.launch()