Seite 1 von 1

Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 18:43
von Merkator
Hey,

Code: Alles auswählen

import os
import platform
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
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

# Informiere Benutzer über erforderliche Pakete
required_packages = ['selenium', 'webdriver-manager']
for package in required_packages:
    try:
        __import__(package)
    except ImportError:
        print(f"Bitte installiere das Paket {package} mit 'pip install {package}'")
        

# Automatische Erkennung des Betriebssystems
system = platform.system()
if system == "Windows":
    url = "https://support.microsoft.com/en-us/windows/what-s-new-in-recent-windows-updates-2df971e0-341a-68b1-3bf8-bc3e3ff8c3a5"
elif system == "Linux":
    url = "https://bits.debian.org/"
else:
    print("Dieses Betriebssystem wird nicht unterstützt.")
   

# Chrome-Optionen konfigurieren
chrome_options = Options()
chrome_options.headless = True

# WebDriver initialisieren
driver = webdriver.Chrome(ChromeDriverManager().install(), chrome_options=chrome_options)

und jedesmal:
/bin/sh: 1: google-chrome: not found
/bin/sh: 1: google-chrome-stable: not found
/bin/sh: 1: google-chrome-beta: not found
/bin/sh: 1: google-chrome-dev: not found
/bin/sh: 1: google-chrome: not found
/bin/sh: 1: google-chrome-stable: not found
/bin/sh: 1: google-chrome-beta: not found
/bin/sh: 1: google-chrome-dev: not found
/bin/sh: 1: google-chrome: not found
/bin/sh: 1: google-chrome-stable: not found
/bin/sh: 1: google-chrome-beta: not found
/bin/sh: 1: google-chrome-dev: not found
/bin/sh: 1: google-chrome: not found
/bin/sh: 1: google-chrome-stable: not found
/bin/sh: 1: google-chrome-beta: not found
/bin/sh: 1: google-chrome-dev: not found
/bin/sh: 1: google-chrome: not found
/bin/sh: 1: google-chrome-stable: not found
/bin/sh: 1: google-chrome-beta: not found
/bin/sh: 1: google-chrome-dev: not found
und
Exception has occurred: TypeError
__init__() got an unexpected keyword argument 'chrome_options'
File "/home/pasdadas/drive.py", line 35, in <module>
driver = webdriver.Chrome(ChromeDriverManager().install(), chrome_options=chrome_options)
TypeError: __init__() got an unexpected keyword argument 'chrome_options'
Wenn jemand Ahnung hat bitte melden. Danke

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 19:42
von Sirius3
Die Frage ist, wie Du auf die Idee kommst, dass es chrome_options als Argument gibt?
Die Prüfung auf die Pakete ist unsinn, weil sie zu spät kommt.
Den Sinn der Betriebssystemerkennung erkenne ich auch nicht.

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 20:04
von Merkator
Anfangs hatte ich:

driver = webdriver.Chrome(ChromeDriverManager().install(), options=chrome_options)

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 20:05
von Merkator
Sirius3 hat geschrieben: Mittwoch 20. September 2023, 19:42 Die Frage ist, wie Du auf die Idee kommst, dass es chrome_options als Argument gibt?
Die Prüfung auf die Pakete ist unsinn, weil sie zu spät kommt.
Den Sinn der Betriebssystemerkennung erkenne ich auch nicht.
Das ganze mit Betriebssystemerkennung ist erst im späterem Teil des Programmes. Hast du denn eventuell irgenwelche Anregungen oder Ideen wie ich meinen Code zum laufen bekommen könnte? Ich muss das Programm morgen abend abgeben.

Danke trotzdem.

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 20:36
von Sirius3
Und warum hast Du es geändert?

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 20:38
von Merkator
Sirius3 hat geschrieben: Mittwoch 20. September 2023, 20:36 Und warum hast Du es geändert?
Es klappte damit auch nicht. Und der gute Freund ChatGPT war die letze Hoffnung.....

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 20:53
von Sirius3
Was klappt nicht?

Re: Selenium Webdriver

Verfasst: Mittwoch 20. September 2023, 22:41
von Merkator
Egal wie ich den Code abändere, es kommen immer Errors.
Das einzige Ziel bei alle dem ist, dass jemand eine .exe Datei ausführen kann, die Module sich alle automatisch installieren und das der Driver vorhanden ist. Und beim letzterem Scheitert es. :?

Re: Selenium Webdriver

Verfasst: Donnerstag 21. September 2023, 21:18
von Merkator
Merkator hat geschrieben: Mittwoch 20. September 2023, 22:41 Egal wie ich den Code abändere, es kommen immer Errors.
Das einzige Ziel bei alle dem ist, dass jemand eine .exe Datei ausführen kann, die Module sich alle automatisch installieren und das der Driver vorhanden ist. Und beim letzterem Scheitert es. :?
Hat Niemand eine Idee?

Re: Selenium Webdriver

Verfasst: Donnerstag 21. September 2023, 22:05
von grubenfox
auf der pypi-Seite vom Webdriver-Manager habe ich diesen Text gefunden:
webdriver_manager downloading some webdrivers from their official GitHub repositories but GitHub has limitations like 60 requests per hour for unauthenticated users. In case not to face an error related to github credentials, you need to create github token and place it into your environment:
vielleicht liegt es ja einfach daran dass GitHub den Treiber nicht raus rückt....
Der wievielte Request in den letzten 60 Minuten war es?
Oder liegt ein github token vor und es ist in der Umgebung eingetragen? Richtig eingetragen (wie auch immer das aussehen muss)? Von GitHub habe ich genau gar keinen Plan.

Re: Selenium Webdriver

Verfasst: Samstag 23. September 2023, 09:22
von Merkator
grubenfox hat geschrieben: Donnerstag 21. September 2023, 22:05 auf der pypi-Seite vom Webdriver-Manager habe ich diesen Text gefunden:
webdriver_manager downloading some webdrivers from their official GitHub repositories but GitHub has limitations like 60 requests per hour for unauthenticated users. In case not to face an error related to github credentials, you need to create github token and place it into your environment:
vielleicht liegt es ja einfach daran dass GitHub den Treiber nicht raus rückt....
Der wievielte Request in den letzten 60 Minuten war es?
Oder liegt ein github token vor und es ist in der Umgebung eingetragen? Richtig eingetragen (wie auch immer das aussehen muss)? Von GitHub habe ich genau gar keinen Plan.

Danke. Es war so ca der 10te Request. Auch ich habe von Github wenig Ahnung. Ist es denn evtl. möglich, dass in der am Ende existierenden .exe Datei der Driver direkt dabei ist? Dass der garnicht erst installiert werden muss?

Re: Selenium Webdriver

Verfasst: Samstag 23. September 2023, 09:46
von __deets__
Dann musst du den eben selbst in den Installer packen, und sicherstellen, dass der gefunden wird.

Re: Selenium Webdriver

Verfasst: Montag 25. September 2023, 14:52
von Merkator
__deets__ hat geschrieben: Samstag 23. September 2023, 09:46 Dann musst du den eben selbst in den Installer packen, und sicherstellen, dass der gefunden wird.
Verstehe ich nicht, könntest du das bitte genauer erklären? danke

Re: Selenium Webdriver

Verfasst: Montag 25. September 2023, 15:01
von __deets__
Du musst schauen, was genau da runtergeladen wird, und wie das, was da runtergeladen wird, lokalisiert wird. Und dann eben als Dateien in dein Projekt packen, und den Mechanismus zum auffinden so umbiegen, dass er auf deine mitgelieferten Daten zeigt. Genauer geht's nicht, denn der Mechanismus ist kompliziert, und ich will den ja nicht verstehen. Du musst ihn verstehen.