MacOS Catalina(v 10.15.3): Fout: “chromedriver” kan niet worden geopend omdat de ontwikkelaar niet kan worden geverifieerd. Kan de Chrome-browser niet starten

Ik heb onlangs mijn mac-machine geüpgraded naar OS Catalina(v 10.15.3). Na deze upgrade kan ik de Chrome-driver niet starten met selenium.

Ik krijg te maken met de onderstaande fout wanneer ik de seleniumcode uitvoer om de Chrome-browser te starten.

“‘chromedriver’ kan niet worden geopend omdat de ontwikkelaar niet kan worden geverifieerd”.
“macOS kan niet verifiëren dat deze app vrij is van malware.”

Help me alsjeblieft!


Antwoord 1, autoriteit 100%

Ik heb het werk gevonden zoals hieronder

  1. Terminal openen
  2. Navigeer naar het pad waar uw chromedriver-bestand zich bevindt
  3. Voer een van de onderstaande opdrachten uit

Command1:xattr -d com.apple.quarantine <name-of-executable>

Voorbeeld

/usr/local/Caskroom/chromedriver 
$ xattr -d com.apple.quarantine chromedriver 

(of)

Command2:spctl --add --label 'Approved' <name-of-executable>

Bron: https://docwhat.org/upgrading-to-catalina

Opmerking: dit werkt alleen met de bestanden waarin de bovenstaande opdracht wordt uitgevoerd. Als een nieuwe chromedriver wordt gedownload, moet de opdracht opnieuw worden uitgevoerd op het nieuw gedownloade bestand


Antwoord 2, autoriteit 48%

In macOS Catalina en macOS Mojave, wanneer een app niet kan worden geïnstalleerd omdat deze niet door een notaris is erkend of afkomstig is van een niet-geïdentificeerde ontwikkelaar, wordt deze weergegeven in Systeemvoorkeuren > Beveiliging & Privacy, onder het tabblad Algemeen. Klik op Toch openen om te bevestigen dat u de app wilt openen of installeren.

De waarschuwingsprompt verschijnt opnieuw en u kunt op Openen klikken.*

De app wordt nu opgeslagen als een uitzondering op je beveiligingsinstellingen en je kunt deze in de toekomst openen door erop te dubbelklikken, net als elke geautoriseerde app.

*Als u wordt gevraagd om Finder te openen: houd de Control-toets ingedrukt en klik op de app in Finder, kies Openen in het menu en klik vervolgens op Openen in het dialoogvenster dat verschijnt. Voer uw beheerdersnaam en wachtwoord in om de app te openen.


Antwoord 3, autoriteit 17%

Bestaande antwoorden zijn geweldig, en ze werken.

Maar een eenvoudigere oplossing is om de terminal te openen en dit uit te voeren:

xattr -d com.apple.quarantine $(which chromedriver)

Antwoord 4, autoriteit 8%

Snelle oplossing

  1. Finder openen
  2. Navigeer naar waar het chromedriver-bestand zich bevindt
  3. Klik met de rechtermuisknop op het chromedriver-bestand en selecteer openen

Hierna zou het script goed moeten werken.


Antwoord 5, autoriteit 4%

Open terminal en navigeer naar het pad waar chromedriver is gedownload.
Voer xattr -d com.apple.quarantine chromedriver

uit


Antwoord 6, autoriteit 4%

Twee stappen om dit op te lossen:

  1. Navigeer naar het pad met commando- cd /usr/local/bin. Hier ziet u uw chromedriver geïnstalleerd.
  2. Voer in de bin-map deze opdracht uit: xattr -d com.apple.quarantine chromedriver.

En dat is alles. Zo werkte het voor mij.


7

(Wat voor mij werkte, hopelijk werkt voor jou)

Update voor alle MacOS Big Sur 11.0 Gebruikers:

  1. Gebruik Homebrew om Chromedriver

    te installeren

    brew install chromedriver

  2. navigeer naar chromedriver die specifiek in de map Caskroomstaat

    /usr/local/bin/Caskroom/chromedriver ... keep going until you see the Unix Executable File called "chromedriver"

  3. het volgen van Aanbeveling van Applevoor open Mac-apps van een onbekende ontwikkelaar, dubbelklik op chromedriveren klik vervolgens op “Openen”

Voor mij resulteerde dit in een terminalvenster dat opdook met de output:


Starting ChromeDriver ...
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.

Ik kan nu scrapy-seleniumuitvoeren, geen probleem, je kunt het terminalvenster sluiten (ja, het proces beëindigen is OK) en het zou nog steeds moeten werken zonder je nu te stoppen.

Laat me weten of dit voor jou werkt


Antwoord 8

De bovenstaande antwoorden waren nuttig. Ik zou alleen willen toevoegen dat als je Selenium draait vanuit een ontwikkelomgeving, in mijn geval een Jupyter Notebook, en dit het probleem is, je waarschijnlijk een PermissionError: [Errno 13] Permission deniedfout. Er zijn andere oorzaken voor deze fout, maar het kan zijn dat macOS Catalina de uitvoering van chromedriverblokkeert om veiligheidsredenen. Door de bovenstaande benaderingen te volgen, voerde ik het uit vanaf de opdrachtregel en kon het vervolgens openen vanuit Jupyter met behulp van driver = webdriver.Chrome('path/to/chromedriver).


Antwoord 9

xattr -d com.apple.quarantine $(which chromedriver)alleen is niet genoeg.

met de nieuwste versie van chromedriver lijkt het alsof ze worden opgedeeld in versiemappen.
voor mij op 30/09/20. wat voor mij werkte, is xattr -d com.apple.quarantine 85.0.4183.87/chromedriver

Other episodes