Chrome-Erweiterung mit Selenium automatisieren?
Posted: 27 Dec 2024, 13:27
Ich versuche, eine Chrome-Erweiterung mit dem folgenden Code automatisch zu erstellen:
Dies ist die Chrome-Erweiterung:
https://chromewebstore.google.com/detail/ email-hunter/mbindhfolmpijhodmgkloeeppmkhpmhc
Und das ist der Code, den ich versuche:
Aber ich bekomme nur diesen Fehler:
Wie kann ich diese Erweiterungen mit Selenium automatisieren?
(Klicken Sie mehrmals auf das Symbol und rufen Sie dann die Daten aus dem Textfeld ab, in dem die E-Mails der Erweiterung angezeigt werden.)
Dies ist die Chrome-Erweiterung:
https://chromewebstore.google.com/detail/ email-hunter/mbindhfolmpijhodmgkloeeppmkhpmhc
Und das ist der Code, den ich versuche:
Code: Select all
import os, sys
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support.ui import WebDriverWait
import pyautogui
path = os.path.abspath(os.path.dirname(sys.argv[0]))
fnExtension = os.path.join(path, "EmailHunter.crx")
print(f"Checking Browser driver...")
options = Options()
options.add_argument("start-maximized")
options.add_argument('--log-level=3')
options.add_extension(fnExtension)
options.add_experimental_option("prefs", {"profile.default_content_setting_values.notifications": 1})
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
srv=Service()
driver = webdriver.Chrome (service=srv, options=options)
waitWD = WebDriverWait (driver, 10)
link = f"https://www.orf.at"
driver.get (link)
fnExtensionIcon = os.path.join(path, "IconExtension.png")
img_location = pyautogui.locateOnScreen(fnExtension, confidence=0.5)
image_location_point = pyautogui.center(img_location)
x, y = image_location_point
pyautogui.click(x, y)
Code: Select all
(seleniumALL) C:\DEVNEU\Fiverr2024\ORDER\robalf\TRYuseExtension>python test.py
Checking Browser driver...
Traceback (most recent call last):
File "C:\DEVNEU\Fiverr2024\ORDER\robalf\TRYuseExtension\test.py", line 29, in
img_location = pyautogui.locateOnScreen(fnExtension, confidence=0.5)
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyautogui\__init__.py", line 172, in wrapper
return wrappedFunction(*args, **kwargs)
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyautogui\__init__.py", line 210, in locateOnScreen
return pyscreeze.locateOnScreen(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyscreeze\__init__.py", line 405, in locateOnScreen
retVal = locate(image, screenshotIm, **kwargs)
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyscreeze\__init__.py", line 383, in locate
points = tuple(locateAll(needleImage, haystackImage, **kwargs))
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyscreeze\__init__.py", line 231, in _locateAll_opencv
needleImage = _load_cv2(needleImage, grayscale)
File "C:\DEVNEU\.venv\seleniumALL\Lib\site-packages\pyscreeze\__init__.py", line 193, in _load_cv2
raise IOError(
......
)
OSError: Failed to read C:\DEVNEU\Fiverr2024\ORDER\robalf\TRYuseExtension\EmailHunter.crx because file is missing, has improper permissions, or is an unsupported or invalid format
(Klicken Sie mehrmals auf das Symbol und rufen Sie dann die Daten aus dem Textfeld ab, in dem die E-Mails der Erweiterung angezeigt werden.)