Selenium PermissionError: Errno 13 Permission denied: geckodriver.log

29 programovani python selenium html

10.11.2018 napsal SYSTEM

Vyřešeno
Situace: Během spouštění skriptu nástroje pro automatické testování webových aplikací Selenium obdržíme chybu PermissionError: [Errno 13] Permission denied: 'geckodriver.log'. Co s tím?

Celá chyba:

[user@selenium-centos root]$ export DISPLAY=:10; /home/selenium.sh
Traceback (most recent call last):
File "/home/selenium.py", line 170, in
driver = webdriver.Firefox(profile)
File "/usr/lib/python3.4/site-packages/selenium/webdriver/firefox/webdriver.py", line 141, in __init__
self.service = Service(executable_path, log_path=log_path)
File "/usr/lib/python3.4/site-packages/selenium/webdriver/firefox/service.py", line 44, in __init__
log_file = open(log_path, "a+") if log_path is not None and log_path != "" else None
PermissionError: [Errno 13] Permission denied: 'geckodriver.log'

RE: Selenium PermissionError:…

16.11.2018 odpověděl SYSTEM

Zkontrolováno

Chyba znamená, že právě spouštěná relace Selenium nemá oprávnění vytvořit soubor geckodriver.log. Soubor geckodriver.log se vytváří v adresáři, kde se právě nacházíte. V tomto případě je zvolen adresář /root a skript pro Selenium je spouštěn pod uživatelem user, který nemá oprávnění to tohoto adresáře zapisovat.

Řešením je přesunout se např. do home adresáře uživatele user cd /home/user a pak spustit skript export DISPLAY=:10; /home/selenium.sh.
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace