From 334f990916c2b9ee22898a7971da4da5fca2df02 Mon Sep 17 00:00:00 2001
From: RochoElLocho <d.rath@diefleckenbuehler.de>
Date: Thu, 30 Nov 2023 10:16:20 +0100
Subject: [PATCH] =?UTF-8?q?Neue=20Webseiten=20hinzugef=C3=BCgt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Kategorie Landwirtschaft hinzugefügt.
---
 einkauf_suche.py | 114 +++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 110 insertions(+), 4 deletions(-)

diff --git a/einkauf_suche.py b/einkauf_suche.py
index 22fa350..3f00c93 100644
--- a/einkauf_suche.py
+++ b/einkauf_suche.py
@@ -117,7 +117,20 @@ class SearchThread(QThread):
                 self.suche_auf_pml()
             elif webseite == "DM-Folien: Pressengarn":
                 self.suche_auf_dmfolien()
-            
+            elif webseite == "Proficleanshop: Reinigung, Desinfektion, Hygienepapier, Medical, Einweg & Deko, Industrie, Maschinen":
+                self.suche_auf_proficleanshop()
+            elif webseite == "Siepmann: Weidezaun, Schlepperteile, Tiere, Haus & Hof, Hofladen, Lüftung & Windschutz":
+                self.suche_auf_siepmann()
+            elif webseite == "FK-Söhnchen: Landwirtschaftsbedarf, Elektrik, Landmaschinenteile, Hydraulik, Haus, Hof & Forst":
+                self.suche_auf_fksoehnchen
+            elif webseite == "Wahl-Agar: Stall, Weidezaun, Forst, Veterinär, Landmaschinen & Co., Arbeitskleidung, Haus & Hof":
+                self.suche_auf_wahl_agrar()      
+            elif webseite == "TVV-Verpackungen":
+                self.suche_auf_tvv() 
+            elif webseite == "Eierschachteln.de: Bedarf für Hühnerhaltung":
+                self.suche_auf_eierschachteln()  
+            elif webseite == "KOX: Gartenbedarf, Schneideblätter Heckenschere, etc.":
+                self.suche_auf_kox()
     
         except Exception as e:
             print(f"Fehler bei der Suche auf {webseite}: {e}")
@@ -536,9 +549,74 @@ class SearchThread(QThread):
         # 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")))
-    
 
-categories = ["IT/EDV", "Haustechnik","Küche", "Verwaltung", "Transporte"]
+    def suche_auf_proficleanshop(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.proficleanshop.de/searchresults/?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")))
+
+    def suche_auf_siepmann(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.siepmann.net/siepmann_shop.php?suchfeld={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")))
+
+    def suche_auf_fksoehnchen(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.fk-soehnchen.de/index.php?stoken=&lang=0&cl=search&searchparam={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")))
+
+    def suche_auf_wahl_agrar(self):
+        # URL für die Suche generieren
+        search_url = 'https://www.agrar-fachversand.com/de/'  # Ersetzen Sie dies durch die tatsächliche URL für Wahl Agrar
+
+        # 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.CLASS_NAME, "main-search--field")))
+
+        # Auf die Suchleiste klicken
+        search_box = self.driver.find_element(By.CLASS_NAME, "main-search--field")
+        search_box.click()
+
+        # Suchbegriff eingeben und Suche starten
+        search_box.clear()
+        search_box.send_keys(self.search_term)
+        search_box.send_keys(Keys.RETURN)
+
+    def suche_auf_tvv(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.tvv-verpackungen.de/index.php?jtl_token=86147d041429ad7dafb0c5f1a80e61e089eb4f04ec192b004ba5e69e8aaa45c5&sp_additional_mail=&qs={self.search_term}'  # Ersetzen Sie dies durch die tatsächliche URL für DVV
+
+        # 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-header-mobile-top")))
+
+    def suche_auf_eierschachteln(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.eierschachteln.de/search?sSearch={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")))
+
+    def suche_auf_kox(self):
+        # URL für die Suche generieren
+        search_url = f'https://www.kox-direct.de/?query={self.search_term}&sid=6d0b4366af8bb99af514529b7e61ad&act=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.ID, "search")))
+        
+
+categories = ["IT/EDV", "Haustechnik","Küche", "Verwaltung", "Transporte", "Landwirtschaft"]
 webpages =  [
         ["Reichelt: Technikbedarf", "Kosatec: Elektro Artikel", "Conrad: Technik Marktplatz"],
         ["Hornbach: Bad, Baustoffe, Holz, Fenster & Türen, Bodenbeläge, Werkzeug, Farben & Tapeten, Garten, Heizen",
@@ -575,7 +653,14 @@ webpages =  [
          "Label-Ident: Etikettendrucker, Software & Zubehör, Thermotransfer-Farbbänder, Etiketten auf Rolle"],
         ["Transpak: Kartonage mit FL Logo, Stretchfolie, Packband, Versandverpackungen,Polstern, Folien und Beutel",
          "PML: Kassenrollen, Büro- und Funktionspapiere",
-         "DM-Folien: Pressengarn"]
+         "DM-Folien: Pressengarn"],
+        ["Proficleanshop: Reinigung, Desinfektion, Hygienepapier, Medical, Einweg & Deko, Industrie, Maschinen",
+         "Siepmann: Weidezaun, Schlepperteile, Tiere, Haus & Hof, Hofladen, Lüftung & Windschutz",
+         "FK-Söhnchen: Landwirtschaftsbedarf, Elektrik, Landmaschinenteile, Hydraulik, Haus, Hof & Forst",
+         "Wahl-Agar: Stall, Weidezaun, Forst, Veterinär, Landmaschinen & Co., Arbeitskleidung, Haus & Hof",
+         "TVV-Verpackungen: Netze & Planen, Folien & Folienartikel, Agrar & Garten, Verpackunsmaterial",
+         "Eierschachteln.de: Bedarf für Hühnerhaltung",
+         "KOX: Gartenbedarf, Schneideblätter Heckenschere, etc."]
 ]
 
 class WebseitenSucheApp(QWidget):
@@ -699,6 +784,27 @@ class WebseitenSucheApp(QWidget):
 
             grid_layout.addWidget(checkbox, row+ 10, 2, 1, 2)
 
+
+        category = "Landwirtschaft"
+        category_label = QLabel(category)
+        grid_layout.addWidget(category_label, 13, 2, 1, 2)
+
+        # Add corresponding webpages in the second column
+        for row, webpage in enumerate(self.category_webpages_mapping[category]):
+            checkbox = QCheckBox(webpage)
+            checkbox.setChecked(self.selected_webpages[webpage])
+            checkbox.stateChanged.connect(self.make_checkbox_callback(webpage))
+
+            green_webpages = ["Proficleanshop", "Siepmann", "FK-Söhnchen", "Wahl-Agar", "TVV-Verpackungen", "Eierschachteln.de", "KOX"]
+            if any(green_webpage in webpage for green_webpage in green_webpages):
+                checkbox.setStyleSheet("color: green;")
+
+            yellow_webpages = []
+            if any(yellow_webpage in webpage for yellow_webpage in yellow_webpages):
+                checkbox.setStyleSheet("color: yellow;")
+
+            grid_layout.addWidget(checkbox, row+ 14, 2, 1, 2)
+
         
         ##########################################################################################################################