optimierungen

This commit is contained in:
Domenik Rath 2023-11-23 16:19:28 +01:00
parent 7eb7559213
commit a401041df3
47 changed files with 597 additions and 1461 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,84 +0,0 @@
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_())

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_brewes(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.brewes.de/catalogsearch/result?q='
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
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__":
# Benutzereingabe
suchbegriff_brewes = input("Nach welchem Produkt suchen Sie auf Brewes? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_brewes(suchbegriff_brewes)

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_bueroshop24(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.bueroshop24.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, "searchTerm")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "searchTerm")
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__":
# Benutzereingabe
suchbegriff_bueroshop24 = input("Nach welchen Produkten suchen Sie auf bueroshop24.de? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_bueroshop24(suchbegriff_bueroshop24)

View File

@ -1,55 +0,0 @@
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
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_conrad(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.conrad.de/search.html?search={suchbegriff}'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "header-search")))
# Suchbegriff eingeben
search_box = driver.find_element(By.ID, "header-search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
# Auf das Laden der Suchergebnisse warten (falls erforderlich)
# Hier könnte man zum Beispiel warten, bis ein bestimmtes Element auf der Ergebnisseite erscheint.
# 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-name')]
# 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_conrad = input("Welchen Artikel suchst du bei Conrad? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_conrad(suchbegriff_conrad)

View File

@ -1,55 +0,0 @@
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
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_contorion(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.contorion.de/suche?q={suchbegriff}'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search-input")))
# Suchbegriff eingeben
search_box = driver.find_element(By.ID, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
# Auf das Laden der Suchergebnisse warten (falls erforderlich)
# Hier könnte man zum Beispiel warten, bis ein bestimmtes Element auf der Ergebnisseite erscheint.
# 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_='c-product-tile__title')]
# 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_contorion = input("Welchen Artikel suchst du bei Contorion? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_contorion(suchbegriff_contorion)

View File

@ -1,55 +0,0 @@
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 time
def suche_auf_delker(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.delker2business.com/nw2017/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "query")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "query")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_delker = input("Nach welchem Produkt suchen Sie auf Delker? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_delker(suchbegriff_delker)

597
einkauf_suche.py Normal file
View File

@ -0,0 +1,597 @@
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QLineEdit, QPushButton, QCheckBox, QMessageBox
from concurrent.futures import ThreadPoolExecutor
from PyQt5.QtCore import Qt, QThread, pyqtSignal
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 SearchThread(QThread):
search_finished = pyqtSignal()
def __init__(self, selected_webpages, search_term, parent=None):
super(SearchThread, self).__init__(parent)
self.selected_webpages = selected_webpages
self.search_term = search_term
self.error_message = None
def run(self):
try:
with ThreadPoolExecutor() as executor:
futures = []
for webseite in self.selected_webpages:
# Fügen hier andere Suchfunktionen hinzu
# WebDriver initialisieren
self.driver = webdriver.Edge()
if webseite == "Reichelt":
futures.append(executor.submit(self.suche_auf_reichelt))
elif webseite == "Conrad":
futures.append(executor.submit(self.suche_auf_conrad))
elif webseite == "Kosatec":
futures.append(executor.submit(self.suche_auf_kosatec))
elif webseite == "Hornbach":
futures.append(executor.submit(self.suche_auf_hornbach))
elif webseite =="Contorion":
futures.append(executor.submit(self.suche_auf_contorion))
elif webseite == "Gastro Teile Shop":
futures.append(executor.submit(self.suche_auf_gastroteileshop))
elif webseite == "TiroLED":
futures.append(executor.submit(self.suche_auf_tiroled))
elif webseite == "Megabad":
futures.append(executor.submit(self.suche_auf_megabad))
elif webseite == "IPS":
futures.append(executor.submit(self.suche_auf_ips_shop, ))
elif webseite == "Brewes":
futures.append(executor.submit(self.suche_auf_brewes))
elif webseite == "Delker":
futures.appen(executor.submit(self.suche_auf_delker))
elif webseite == "Knauss":
futures.append(executor.submit(self.suche_auf_knauss))
elif webseite == "Schildershop24":
futures.append(executor.submit(self.suche_auf_schildershop24))
elif webseite == "Häfele":
futures.append(executor.submit(self.suche_auf_haefele))
elif webseite == "Esmeyer":
futures.append(executor.submit(self.suche_auf_esmeyer))
elif webseite == "Papstar":
futures.append(executor.submit(self.suche_auf_papstar))
elif webseite == "Lusini":
futures.append(executor.submit(self.suche_auf_lusini))
elif webseite == "Hygi":
futures.append(executor.submit(self.suche_auf_hygi))
elif webseite == "Schafferer":
futures.append(executor.submit(self.suche_auf_schafferer))
elif webseite == "Gastronomie Kaufhaus":
futures.append(executor.submit(self.suche_auf_gastronomie_kaufhaus))
elif webseite == "Böttcher":
futures.append(executor.submit(self.suche_auf_boettcher))
elif webseite == "Büroshop24":
futures.append(executor.submit(self.suche_auf_bueroshop24))
for future in futures:
future.result() # Warte auf das Ende der Suche
self.search_finished.emit()
except Exception as e:
self.error_message = f"Fehler bei der Suche: {e}"
def suche_auf_haefele(self):
# URL für die Suche generieren
search_url = 'https://www.haefele.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "inputSearchTerm")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "inputSearchTerm")
search_box.clear()
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_brewes(self):
# URL für die Suche generieren
search_url = 'https://www.brewes.de/catalogsearch/result?q='
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_conrad(self):
# WebDriver initialisieren
# Such-URL generieren
search_url = f'https://www.conrad.de/search.html?search={self.search_term}'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "header-search")))
# Suchbegriff eingeben
search_box = self.driver.find_element(By.ID, "header-search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
def suche_auf_contorion(self):
# Such-URL generieren
search_url = f'https://www.contorion.de/suche?q={self.search_term}'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search-input")))
# Suchbegriff eingeben
search_box = self.driver.find_element(By.ID, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
def suche_auf_reichelt(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.reichelt.de/index.html?ACTION=446&LA=446&nbc=1&SEARCH={self.search_term}'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 60).until(EC.presence_of_element_located((By.ID, "searchbutton")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "quicksearch_new")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Formular abschicken
search_button = self.driver.find_element(By.ID, "searchbutton")
search_button.click()
def suche_auf_kosatec(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.kosatec.de/suche?query={self.search_term}'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "input[name='search']")))
# Suchbegriff eingeben
search_box = self.driver.find_element(By.CSS_SELECTOR, "input[name='search']")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
def suche_auf_hornbach(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.hornbach.de/s/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "global_search")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "global_search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_gastroteileshop(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = f'https://www.gastroteileshop.de/?s={self.search_term}'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
# Warten, bis das Suchfeld sichtbar ist
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.CLASS_NAME, "search-input")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.CLASS_NAME, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_tiroled(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.tiroled.de/de/search'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "search")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_megabad(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.megabad.com/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search-bar-input")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "search-bar-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_ips_shop(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.ips-kts.com/de/suche?query='
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "query")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "query")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
search_box.send_keys(Keys.RETURN)
def suche_auf_delker(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.delker2business.com/nw2017/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "query")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "query")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_knauss(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.knauss.info/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "sSearch")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "sSearch")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_schildershop24(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.schildershop24.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search-query-stichwort_neu")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "search-query-stichwort_neu")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_esmeyer(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.esmeyer-shop.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.NAME, "search")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.NAME, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_papstar(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.papstar-shop.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_lusini(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.lusini.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "search-input")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_hygi(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.hygi.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "qbox")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "qbox")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_schafferer(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.schafferer.de/gastro/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "quicksearch-input")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "quicksearch-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten
search_box.send_keys(Keys.RETURN)
def suche_auf_gastronomie_kaufhaus(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.gastronomie-kaufhaus.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "searchParam")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "searchParam")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten (falls notwendig)
search_box.send_keys(Keys.RETURN)
def suche_auf_boettcher(self):
# WebDriver initialisieren
self.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
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "autocomplete-0-input")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "autocomplete-0-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten (falls notwendig)
search_box.send_keys(Keys.RETURN)
def suche_auf_bueroshop24(self):
# WebDriver initialisieren
self.driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.bueroshop24.de/'
# Webseite aufrufen und auf das vollständige Laden warten
self.driver.get(search_url)
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "searchTerm")))
# Suchbegriff eingeben und Suche starten
search_box = self.driver.find_element(By.ID, "searchTerm")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(self.search_term)
# Enter-Taste drücken, um die Suche zu starten (falls notwendig)
search_box.send_keys(Keys.RETURN)
class WebseitenSucheApp(QWidget):
def __init__(self):
super().__init__()
self.selected_webpages = {
"Reichelt": False,
"Conrad": False,
"Kosatec": False,
"Hornbach": False,
"Contorion": False,
"Gastro Teile Shop": False,
"TiroLED": False,
"Megabad": False,
"IPS": False,
"Brewes": False,
"Delker": False,
"Knauss": False,
"Schildershop24": False,
"Häfele": False,
"Esmeyer": False,
"Papstar": False,
"Lusini": False,
"Hygi": False,
"Schafferer": False,
"Gastronomie Kaufhaus": False,
"Böttcher": False,
"Büroshop24": False
}
self.search_term = ""
self.driver = None
self.init_ui()
def init_ui(self):
layout = QVBoxLayout()
# Webseiten-Auswahl
layout.addWidget(QLabel("Wählen Sie die Webseiten aus:"))
for webpage, checked in self.selected_webpages.items():
checkbox = QCheckBox(webpage)
checkbox.setChecked(checked)
checkbox.stateChanged.connect(lambda state, page=webpage: self.update_webpage_state(page, state))
layout.addWidget(checkbox)
# Suchbegriff-Eingabe
search_label = QLabel("Geben Sie den Suchbegriff ein:")
layout.addWidget(search_label)
search_input = QLineEdit(self)
search_input.textChanged.connect(self.update_search_term)
layout.addWidget(search_input)
# Suchen-Button
search_button = QPushButton("Suche starten", self)
search_button.clicked.connect(self.start_search)
layout.addWidget(search_button)
# Neues Suche-Button
new_search_button = QPushButton("Neue Suche starten", self)
new_search_button.clicked.connect(self.new_search)
layout.addWidget(new_search_button)
self.setLayout(layout)
self.setGeometry(300, 300, 400, 200)
self.setWindowTitle('Webseiten Suche App')
self.show()
def update_webpage_state(self, webpage, state):
self.selected_webpages[webpage] = state == 2 # 2 entspricht dem Zustand "ausgewählt"
def update_search_term(self, text):
self.search_term = text
def start_search(self):
selected_webpages = [webpage for webpage, selected in self.selected_webpages.items() if selected]
if not selected_webpages:
QMessageBox.warning(self, "Fehler", "Bitte wählen Sie mindestens eine Webseite aus.")
return
if not self.search_term:
QMessageBox.warning(self, "Fehler", "Bitte geben Sie einen Suchbegriff ein.")
return
# Starte den Such-Thread
self.search_thread = SearchThread(selected_webpages, self.search_term)
self.search_thread.search_finished.connect(self.search_finished)
self.search_thread.start()
def search_finished(self):
self.search_thread.quit()
self.search_thread.wait()
if hasattr(self.search_thread, 'error_message') and self.search_thread.error_message:
QMessageBox.critical(None, "Fehler", self.search_thread.error_message)
else:
QMessageBox.information(None, "Suche abgeschlossen", "Die Suche wurde erfolgreich abgeschlossen.")
def new_search(self):
self.close_driver()
print("Neue Suche starten")
if __name__ == '__main__':
app = QApplication(sys.argv)
window = WebseitenSucheApp()
sys.exit(app.exec_())

View File

@ -1,54 +0,0 @@
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 time
def suche_auf_esmeyer(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.esmeyer-shop.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "search")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_essmeyer = input("Nach welchen Produkten suchen Sie auf Esmeyer? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_essmeyer(suchbegriff_essmeyer)

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_gastronomie_kaufhaus(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.gastronomie-kaufhaus.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, "searchParam")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "searchParam")
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__":
# Benutzereingabe
suchbegriff_gastronomie_kaufhaus = input("Nach welchen Produkten suchen Sie auf gastronomie-kaufhaus.de? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_gastronomie_kaufhaus(suchbegriff_gastronomie_kaufhaus)

View File

@ -1,59 +0,0 @@
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 atexit
def cleanup(driver):
print("Das Programm wird beendet. Der WebDriver wird geschlossen.")
driver.quit()
def suche_auf_gastroteileshop(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# Registrieren der Cleanup-Funktion
atexit.register(cleanup, driver)
# URL für die Suche generieren
search_url = f'https://www.gastroteileshop.de/?s={suchbegriff}'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
# Warten, bis das Suchfeld sichtbar ist
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CLASS_NAME, "search-input")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.CLASS_NAME, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
search_box.send_keys(Keys.RETURN)
# Auf das Laden der Suchergebnisse warten (falls erforderlich)
# Hier könnte man zum Beispiel warten, bis ein bestimmtes Element auf der Ergebnisseite erscheint.
# 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')]
# Ausgabe der gefundenen Links
if gefundene_links:
print("Gefundene Links:")
for link in gefundene_links[:anzahl_ergebnisse]:
print(link)
else:
print("Keine Ergebnisse gefunden.")
# Endlosschleife, um den Browser offen zu halten
input("Enter zum schließen des fensters")
if __name__ == "__main__":
# Benutzereingabe
suchbegriff_gastroteileshop = input("Welchen Artikel suchst du beim Gastroteileshop? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_gastroteileshop(suchbegriff_gastroteileshop)

View File

@ -1,55 +0,0 @@
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 time
def suche_auf_haefele(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.haefele.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "inputSearchTerm")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "inputSearchTerm")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_haefele = input("Nach welchen Produkten suchen Sie auf Häfele? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_haefele(suchbegriff_haefele)

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_hornbach(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.hornbach.de/s/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "global_search")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "global_search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
search_box.send_keys(Keys.RETURN)
# Auf das Laden der Suchergebnisse warten
#WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".search-result-item")))
# 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.")
# 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__":
# Benutzereingabe
suchbegriff_hornbach = input("Welchen Artikel suchst du bei Hornbach? ")
# Suche nach dem Artikel und erhalte gefundene Links
gefundene_links_hornbach = suche_auf_hornbach(suchbegriff_hornbach)

53
hygi.py
View File

@ -1,53 +0,0 @@
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 time
def suche_auf_hygi(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.hygi.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "qbox")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "qbox")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_hygi = input("Nach welchen Produkten suchen Sie auf Hygi.de? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_hygi(suchbegriff_hygi)

53
ips.py
View File

@ -1,53 +0,0 @@
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 time
def suche_auf_ips_shop(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.ips-kts.com/de/suche?query='
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "query")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "query")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
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__":
# Benutzereingabe
suchbegriff_ips_shop = input("Welchen Artikel suchst du bei IPS Shop? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_ips_shop(suchbegriff_ips_shop)

View File

@ -1,55 +0,0 @@
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 time
def suche_auf_knauss(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.knauss.info/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "sSearch")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "sSearch")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_knauss = input("Nach welchem Produkt suchen Sie auf Knauss? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_knauss(suchbegriff_knauss)

View File

@ -1,55 +0,0 @@
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
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_kosatec(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.kosatec.de/suche?query={suchbegriff}'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "input[name='search']")))
# Suchbegriff eingeben
search_box = driver.find_element(By.CSS_SELECTOR, "input[name='search']")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken
search_box.send_keys(Keys.RETURN)
# Auf das Laden der Suchergebnisse warten (falls erforderlich)
# Hier könnte man zum Beispiel warten, bis ein bestimmtes Element auf der Ergebnisseite erscheint.
# 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')]
# 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_kosatec = input("Welchen Artikel suchst du bei Kosatec? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_kosatec(suchbegriff_kosatec)

View File

@ -1,54 +0,0 @@
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 time
def suche_auf_lusini(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.lusini.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search-input")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "search-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_lusini = input("Nach welchen Produkten suchen Sie auf Lusini? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_lusini(suchbegriff_lusini)

178
main.py
View File

@ -1,178 +0,0 @@
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QLineEdit, QPushButton, QCheckBox, QMessageBox
from concurrent.futures import ThreadPoolExecutor
from hornbach import suche_auf_hornbach
from reichelt import suche_auf_reichelt
from kosatec import suche_auf_kosatec
from conrad import suche_auf_conrad
from contorion import suche_auf_contorion
from gastroteileshop import suche_auf_gastroteileshop
from tiroled import suche_auf_tiroled
from megabad import suche_auf_megabad
from ips import suche_auf_ips_shop
from brewes import suche_auf_brewes
from delker import suche_auf_delker
from knauss import suche_auf_knauss
from schildershop24 import suche_auf_schildershop24
from haefele import suche_auf_haefele
from esmeyer import suche_auf_esmeyer
from papstar import suche_auf_papstar
from lusini import suche_auf_lusini
from hygi import suche_auf_hygi
from schafferer import suche_auf_schafferer
from gastrokaufhaus import suche_auf_gastronomie_kaufhaus
from boettcher import suche_auf_boettcher
from bueroshop import suche_auf_bueroshop24
class WebseitenSucheApp(QWidget):
def __init__(self):
super().__init__()
self.selected_webpages = {
"Reichelt": False,
"Conrad": False,
"Kosatec": False,
"Hornbach": False,
"Contorion": False,
"Gastro Teile Shop": False,
"TiroLED": False,
"Megabad": False,
"IPS": False,
"Brewes": False,
"Delker": False,
"Knauss": False,
"Schildershop24": False,
"Häfele": False,
"Esmeyer": False,
"Papstar": False,
"Lusini": False,
"Hygi": False,
"Schafferer": False,
"Gastronomie Kaufhaus": False,
"Böttcher": False,
"Büroshop24": False
}
self.search_term = ""
self.init_ui()
def init_ui(self):
layout = QVBoxLayout()
# Webseiten-Auswahl
layout.addWidget(QLabel("Wählen Sie die Webseiten aus:"))
for webpage, checked in self.selected_webpages.items():
checkbox = QCheckBox(webpage)
checkbox.setChecked(checked)
checkbox.stateChanged.connect(lambda state, page=webpage: self.update_webpage_state(page, state))
layout.addWidget(checkbox)
# Suchbegriff-Eingabe
search_label = QLabel("Geben Sie den Suchbegriff ein:")
layout.addWidget(search_label)
search_input = QLineEdit(self)
search_input.textChanged.connect(self.update_search_term)
layout.addWidget(search_input)
# Suchen-Button
search_button = QPushButton("Suche starten", self)
search_button.clicked.connect(self.start_search)
layout.addWidget(search_button)
# Neues Suche-Button
new_search_button = QPushButton("Neue Suche starten", self)
new_search_button.clicked.connect(self.new_search)
layout.addWidget(new_search_button)
self.setLayout(layout)
self.setGeometry(300, 300, 400, 200)
self.setWindowTitle('Webseiten Suche App')
self.show()
def update_webpage_state(self, webpage, state):
self.selected_webpages[webpage] = state == 2 # 2 entspricht dem Zustand "ausgewählt"
def update_search_term(self, text):
self.search_term = text
def start_search(self):
selected_webpages = [webpage for webpage, selected in self.selected_webpages.items() if selected]
if not selected_webpages:
QMessageBox.warning(self, "Fehler", "Bitte wählen Sie mindestens eine Webseite aus.")
return
if not self.search_term:
QMessageBox.warning(self, "Fehler", "Bitte geben Sie einen Suchbegriff ein.")
return
try:
with ThreadPoolExecutor() as executor:
futures = []
for webseite in selected_webpages:
# Fügen Sie hier Ihre anderen Suchfunktionen hinzu
if webseite == "Reichelt":
futures.append(executor.submit(suche_auf_reichelt, self.search_term))
elif webseite == "Conrad":
futures.append(executor.submit(suche_auf_conrad, self.search_term))
elif webseite == "Kosatec":
futures.append(executor.submit(suche_auf_kosatec, self.search_term))
elif webseite == "Hornbach":
futures.append(executor.submit(suche_auf_hornbach, self.search_term))
elif webseite =="Contorion":
futures.append(executor.submit(suche_auf_contorion, self.search_term))
elif webseite == "Gastro Teile Shop":
futures.append(executor.submit(suche_auf_gastroteileshop, self.search_term))
elif webseite == "TiroLED":
futures.append(executor.submit(suche_auf_tiroled, self.search_term))
elif webseite == "Megabad":
futures.append(executor.submit(suche_auf_megabad, self.search_term))
elif webseite == "IPS":
futures.append(executor.submit(suche_auf_ips_shop, self.search_term))
elif webseite == "Brewes":
futures.append(executor.submit(suche_auf_brewes, self.search_term))
elif webseite == "Delker":
futures.appen(executor.submit(suche_auf_delker, self.search_term))
elif webseite == "Knauss":
futures.append(executor.submit(suche_auf_knauss, self.search_term))
elif webseite == "Schildershop24":
futures.append(executor.submit(suche_auf_schildershop24, self.search_term))
elif webseite == "Häfele":
futures.append(executor.submit(suche_auf_haefele, self.search_term))
elif webseite == "Esmeyer":
futures.append(executor.submit(suche_auf_esmeyer, self.search_term))
elif webseite == "Papstar":
futures.append(executor.submit(suche_auf_papstar, self.search_term))
elif webseite == "Lusini":
futures.append(executor.submit(suche_auf_lusini, self.search_term))
elif webseite == "Hygi":
futures.append(executor.submit(suche_auf_hygi, self.search_term))
elif webseite == "Schafferer":
futures.append(executor.submit(suche_auf_schafferer, self.search_term))
elif webseite == "Gastronomie Kaufhaus":
futures.append(executor.submit(suche_auf_gastronomie_kaufhaus, self.search_term))
elif webseite == "Böttcher":
futures.append(executor.submit(suche_auf_boettcher, self.search_term))
elif webseite == "Büroshop24":
futures.append(executor.submit(suche_auf_bueroshop24, self.search_term))
for future in futures:
future.result() # Warte auf das Ende der Suche
QMessageBox.information(self, "Suche abgeschlossen", "Die Suche wurde erfolgreich abgeschlossen.")
except Exception as e:
QMessageBox.critical(self, "Fehler", f"Fehler bei der Suche: {e}")
def new_search(self):
# Implementieren Sie hier die Logik für eine neue Suche
# Das könnte bedeuten, dass Sie die GUI zurücksetzen oder andere Vorbereitungen treffen
print("Neue Suche starten")
if __name__ == '__main__':
app = QApplication(sys.argv)
window = WebseitenSucheApp()
sys.exit(app.exec_())

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_megabad(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.megabad.com/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search-bar-input")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "search-bar-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
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__":
# Benutzereingabe
suchbegriff_megabad = input("Welchen Artikel suchst du bei Megabad? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_megabad(suchbegriff_megabad)

View File

@ -1,54 +0,0 @@
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 time
def suche_auf_papstar(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.papstar-shop.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_papstar = input("Nach welchen Produkten suchen Sie auf Papstar? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_papstar(suchbegriff_papstar)

View File

@ -1,58 +0,0 @@
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)

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_schafferer(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.schafferer.de/gastro/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "quicksearch-input")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "quicksearch-input")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_schafferer = input("Nach welchen Produkten suchen Sie auf Schafferer.de? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_schafferer(suchbegriff_schafferer)

View File

@ -1,54 +0,0 @@
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 time
def suche_auf_schildershop24(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.schildershop24.de/'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "search-query-stichwort_neu")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.ID, "search-query-stichwort_neu")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken, um die Suche zu starten
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__":
# Benutzereingabe
suchbegriff_schildershop24 = input("Nach welchen Schildern suchen Sie auf Schildershop24? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_schildershop24(suchbegriff_schildershop24)

View File

@ -1,53 +0,0 @@
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 time
def suche_auf_tiroled(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# URL für die Suche generieren
search_url = 'https://www.tiroled.de/de/search'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "search")))
# Suchbegriff eingeben und Suche starten
search_box = driver.find_element(By.NAME, "search")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
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__":
# Benutzereingabe
suchbegriff_tiroled = input("Welchen Artikel suchst du bei Tiroled? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_tiroled(suchbegriff_tiroled)

View File

@ -1,59 +0,0 @@
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
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_voelkner(suchbegriff, anzahl_ergebnisse=5):
# WebDriver initialisieren
driver = webdriver.Edge()
# Such-URL generieren
search_url = f'https://www.voelkner.de/search/search.html?keywords={suchbegriff}'
# Webseite aufrufen und auf das vollständige Laden warten
driver.get(search_url)
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "js_keywords")))
# Suchbegriff eingeben
search_box = driver.find_element(By.ID, "js_keywords")
search_box.clear() # Falls vorheriger Text vorhanden ist
search_box.send_keys(suchbegriff)
# Enter-Taste drücken (optional)
# search_box.send_keys(Keys.RETURN)
# Suchbutton klicken
search_button = driver.find_element(By.CLASS_NAME, "js_submit_search")
search_button.click()
# Auf das Laden der Suchergebnisse warten (falls erforderlich)
# Hier könnte man zum Beispiel warten, bis ein bestimmtes Element auf der Ergebnisseite erscheint.
# 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')]
# 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_voelkner = input("Welchen Artikel suchst du bei Völkner? ")
# Suche nach dem Artikel und erhalte gefundene Links
suche_auf_voelkner(suchbegriff_voelkner)