from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from bs4 import BeautifulSoup def suche_auf_reichelt(suchbegriff, anzahl_ergebnisse=5): # WebDriver initialisieren driver = webdriver.Edge() # Such-URL generieren search_url = f'https://www.reichelt.de/index.html?ACTION=446&LA=446&nbc=1&SEARCH={suchbegriff}' # Webseite aufrufen und auf das vollständige Laden warten driver.get(search_url) WebDriverWait(driver, 60).until(EC.presence_of_element_located((By.ID, "searchbutton"))) # Suchbegriff eingeben und Suche starten search_box = driver.find_element(By.ID, "quicksearch_new") search_box.clear() # Falls vorheriger Text vorhanden ist search_box.send_keys(suchbegriff) # Formular abschicken search_button = driver.find_element(By.ID, "searchbutton") search_button.click() # Auf das Laden der Suchergebnisse warten # HTML-Inhalt der Suchergebnisse abrufen soup = BeautifulSoup(driver.page_source, 'html.parser') # Extrahiere die Links aus den Suchergebnissen gefundene_links = [a['href'] for a in soup.find_all('a', class_='articlelink')] # Ausgabe der gefundenen Links if gefundene_links: print("Gefundene Links:") for link in gefundene_links: print(link) else: print("Keine Ergebnisse gefunden.") # Endlosschleife, um den Browser offen zu halten input("Drücken Sie Enter, um den Browser zu schließen...") # WebDriver schließen driver.quit() if __name__ == "__main__": # Benutzereingabe suchbegriff_reichelt = input("Welchen Artikel suchst du bei Reichelt? ") # Suche nach dem Artikel und erhalte gefundene Links gefundene_links_reichelt = suche_auf_reichelt(suchbegriff_reichelt)