from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from bs4 import BeautifulSoup import sys class WebseitenSucheApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # GUI-Elemente erstellen self.exit_button = QPushButton('Beenden', self) # Layout erstellen vbox = QVBoxLayout() vbox.addWidget(self.exit_button) # Verbinden Sie den Exit-Button mit der Funktion self.exit_button.clicked.connect(QApplication.quit) # Setzen Sie das Layout self.setLayout(vbox) # Fenster Eigenschaften setzen self.setWindowTitle('Webseiten Suchapp') self.setGeometry(300, 300, 300, 150) def suche_auf_boettcher(suchbegriff, anzahl_ergebnisse=5): # WebDriver initialisieren driver = webdriver.Edge() # URL für die Suche generieren search_url = 'https://www.bueromarkt-ag.de/' # Bitte die tatsächliche URL einsetzen # Webseite aufrufen und auf das vollständige Laden warten driver.get(search_url) WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "autocomplete-0-input"))) # Suchbegriff eingeben und Suche starten search_box = driver.find_element(By.ID, "autocomplete-0-input") search_box.clear() # Falls vorheriger Text vorhanden ist search_box.send_keys(suchbegriff) # Enter-Taste drücken, um die Suche zu starten (falls notwendig) search_box.send_keys(Keys.RETURN) # 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_='product-title')][:anzahl_ergebnisse] # Ausgabe der gefundenen Links if gefundene_links: print("Gefundene Links:") for link in gefundene_links: print(link) else: print("Keine Ergebnisse gefunden.") # Hier können Sie den Browser offen lassen, damit Sie die Ergebnisse sehen können. #input("Drücken Sie Enter, um den Browser zu schließen...") # WebDriver schließen driver.quit() if __name__ == "__main__": app = QApplication(sys.argv) window = WebseitenSucheApp() window.show() # Benutzereingabe suchbegriff_boettcher = input("Nach welchen Produkten suchen Sie auf boettcher.de? ") # Suche nach dem Artikel und erhalte gefundene Links suche_auf_boettcher(suchbegriff_boettcher) sys.exit(app.exec_())