Unable to obtain driver for chrome using Selenium Manager

fait, MP, merci

bon… peut etre que c’est un début de quelque chose … :slight_smile:
je ne vois plus d’erreur …

1 « J'aime »

Génial, t’es un chef, merci

par curiosité, si c’est compréhensible, qu’est-ce qui n’allait pas ?

j’ai juste ajouté une info pour dire où aller chercher ce que selenium cherche (mais qu’il devrait trouvé/téléchargé tout seul) …
donc ca m’embete quand meme …

si tu veux faire d’autres tests sur ma conf, n’hésite pas, je te referais l’accès

pour ceux qui auraient le message suivant, et uniquement pour ceux là

et si la commande

chromedriver --version

renvoie bien un numéro de version,

alors voici les modif que vous pouvez faire en attendant :

dans le fichier plugin\noip\resources\noip-renew.py

en ligne 29 ajouter

from selenium.webdriver.chrome.service import Service

image

et vers la ligne 86
compléter :

browser = webdriver.Chrome(options=options)

par

browser = webdriver.Chrome(options=options, service = Service('/usr/bin/chromedriver'))

ça fonctionne chez moi! il voit les domaines, plus d’erreur levée, reste à attendre le renouvellement automatique pour confirmer que RAS sur la totalité :slight_smile:

j’entends tout à fait :wink:
et j’ai relancé l’installation des dépendances. mais visiblement, quand j’ai lancé mon apt-get, ce n’était pas là. mais maintenant ça marche ^^

et le renouvellement auto marche aussi!
good job @tomitomas !

bonjour @tomitomas

j’ai du faire un recovery sur mon ATLAS, je retombe donc sur le problème que tu avais corrigé

[2023-12-01 10:25:35]ERROR : Exception has been thrown. Message: Unable to locate or obtain driver for chrome; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
[2023-12-01 10:25:35]ERROR : [Multimédia][NoIP] file content empty

J’ai fait le recovery pour avoir un système propre, alors je veux pas lancer de commande sans bien comprendre :slight_smile:

si je fais un :

jeedom@JeedomAtlas:~$ chromedriver --version

Command 'chromedriver' not found, but can be installed with:

sudo apt install chromium-driver

avec un sudo pas mieux

jeedom@JeedomAtlas:~$ sudo chromedriver --version
[sudo] Mot de passe de jeedom : 
sudo: chromedriver : commande introuvable

dois-je vraiment lancer l’install de chromium-driver ?

sudo apt install chromium-driver

ce n’est pas le plugin qui devrait le faire dans son environnement ?

voici le log de la réinstallation des dépendances

Launch install of noip dependencies
-- Current OS version :
Description:	Debian GNU/Linux 10 (buster)
-- Updating repo...
Hit:1 http://deb.debian.org/debian buster InRelease
Hit:2 http://deb.debian.org/debian buster-updates InRelease
Get:3 http://deb.debian.org/debian buster-backports InRelease [51.4 kB]
Get:4 http://security.debian.org buster/updates InRelease [34.8 kB]
Hit:5 https://deb.nodesource.com/node_18.x nodistro InRelease
Hit:6 http://mirror.vinehost.net/armbian/apt buster InRelease
Hit:7 https://packagecloud.io/ookla/speedtest-cli/debian buster InRelease
Get:8 http://security.debian.org buster/updates/main arm64 Packages [735 kB]
Get:9 http://security.debian.org buster/updates/main armhf Packages [738 kB]
Fetched 1559 kB in 3s (472 kB/s)
Reading package lists...
-- Installation of python3 and dependencies
Reading package lists...
Building dependency tree...
Reading state information...
build-essential is already the newest version (12.6).
python-dev is already the newest version (2.7.16-1).
python3 is already the newest version (3.7.3-1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installed version of Python :
Python 3.7.3
Your version of python is compatible with this plugin.
-- Installation of pip for python3 and necessary libraries
Reading package lists...
Building dependency tree...
Reading state information...
python3-pip is already the newest version (18.1-5).
python3-dev is already the newest version (3.7.3-1).
python-requests is already the newest version (2.21.0-1+deb10u1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installation of chromium
Reading package lists...
Building dependency tree...
Reading state information...
chromium is already the newest version (89.0.4389.114-1~deb10u1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installed version of pip :
pip 23.3.1 from /usr/local/lib/python3.7/dist-packages/pip (python 3.7)
-- Installation of python library 'selenium' with command pip3.7
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
cat: /tmp/jeedom/noip/dependancy_noip: No such file or directory
-- Installation of dependencies is done !

les dépendances sont en OK mais il semble bien y avoir un soucis avec ce module ?

-- Installation of python library 'selenium' with command pip3.7
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
cat: /tmp/jeedom/noip/dependancy_noip: No such file or directory

j’ai donc pas de dossier Chromedriver

jeedom@JeedomAtlas:~$ ls /usr/bin/chro*
/usr/bin/chromium

Hello j’avais le meme problème que toi et en installant chromium-driver plus de souci

Oui, c’est ce que j’avais été fait manuellement avant le recovery mais autant que ce soit le plugin qui s’en charge et dans son propre environnement. Si @tomitomas fait une correction, je peux la tester.

pas vriament de correction à faire, comme échangé plus haut, la librairie utilisée est censé le faire elle même. :confused:

je viens de repartir d’une debian tout propre et tout neuf, et tout fonctionne parfaitement bien sans toucher à quoi que ce soit …
donc difficile de dire ce qu’il merdouille sur vos install !
(je n’ai d’ailleurs aucun soucis sur ma prod dont le plugin tourne, sans bidouille, depuis 2 ans!)

Salut

Là aussi je suis sur l’image officielle de l’Atlas, toute propre :wink:

Ton plugin est sensé mettre le chromedriver ?

La reponse est au dessus :

Bonjour @tomitomas

Ok, c’est la lib Selenium qui devrait mettre chromedriver

Le fichier dependancy_noip qu’il ne semble pas trouver, est-ce normal ?

j’ai changé ces 2 lignes dans le fichier install_apt.sh

$(sudo $pip3cmd install selenium > /tmp/jeedom/noip/dependancy_noip)
sudo cat /tmp/jeedom/noip/dependancy_noip

dans le log j’ai plus l’erreur du dependancy_noip qu’il ne trouvait pas

Launch install of noip dependencies
-- Current OS version :
Description:	Debian GNU/Linux 10 (buster)
-- Updating repo...
Hit:1 http://deb.debian.org/debian buster InRelease
Hit:2 http://security.debian.org buster/updates InRelease
Hit:3 http://deb.debian.org/debian buster-updates InRelease
Hit:4 http://deb.debian.org/debian buster-backports InRelease
Hit:5 https://deb.nodesource.com/node_18.x nodistro InRelease
Hit:6 http://mirrors.xtom.de/armbian buster InRelease
Hit:7 https://packagecloud.io/ookla/speedtest-cli/debian buster InRelease
Reading package lists...
-- Installation of python3 and dependencies
Reading package lists...
Building dependency tree...
Reading state information...
build-essential is already the newest version (12.6).
python-dev is already the newest version (2.7.16-1).
python3 is already the newest version (3.7.3-1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installed version of Python :
Python 3.7.3
Your version of python is compatible with this plugin.
-- Installation of pip for python3 and necessary libraries
Reading package lists...
Building dependency tree...
Reading state information...
python3-pip is already the newest version (18.1-5).
python3-dev is already the newest version (3.7.3-1).
python-requests is already the newest version (2.21.0-1+deb10u1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installation of chromium
Reading package lists...
Building dependency tree...
Reading state information...
chromium is already the newest version (89.0.4389.114-1~deb10u1).
0 upgraded, 0 newly installed, 0 to remove and 201 not upgraded.
-- Installed version of pip :
pip 23.3.1 from /usr/local/lib/python3.7/dist-packages/pip (python 3.7)
-- Installation of python library 'selenium' with command pip3.7
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Requirement already satisfied: selenium in /usr/local/lib/python3.7/dist-packages (4.11.2)
Requirement already satisfied: urllib3<3,>=1.26 in /usr/local/lib/python3.7/dist-packages (from urllib3[socks]<3,>=1.26->selenium) (2.0.7)
Requirement already satisfied: trio~=0.17 in /usr/local/lib/python3.7/dist-packages (from selenium) (0.22.2)
Requirement already satisfied: trio-websocket~=0.9 in /usr/local/lib/python3.7/dist-packages (from selenium) (0.11.1)
Requirement already satisfied: certifi>=2021.10.8 in /usr/local/lib/python3.7/dist-packages (from selenium) (2023.11.17)
Requirement already satisfied: attrs>=20.1.0 in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (23.1.0)
Requirement already satisfied: sortedcontainers in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (2.4.0)
Requirement already satisfied: idna in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (3.6)
Requirement already satisfied: outcome in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (1.3.0.post0)
Requirement already satisfied: sniffio in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (1.3.0)
Requirement already satisfied: exceptiongroup>=1.0.0rc9 in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (1.2.0)
Requirement already satisfied: wsproto>=0.14 in /usr/local/lib/python3.7/dist-packages (from trio-websocket~=0.9->selenium) (1.2.0)
Requirement already satisfied: pysocks!=1.5.7,<2.0,>=1.5.6 in /usr/local/lib/python3.7/dist-packages (from urllib3[socks]<3,>=1.26->selenium) (1.7.1)
Requirement already satisfied: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from attrs>=20.1.0->trio~=0.17->selenium) (1.7.0)
Requirement already satisfied: h11<1,>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from wsproto>=0.14->trio-websocket~=0.9->selenium) (0.14.0)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from h11<1,>=0.9.0->wsproto>=0.14->trio-websocket~=0.9->selenium) (4.7.1)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->attrs>=20.1.0->trio~=0.17->selenium) (3.15.0)
-- Installation of dependencies is done !

j’ai pas l’impression qu’il install plus de chose :frowning: mais si ca peut te donner des pistes

il y a toujours l’erreur lors du lancement du scan

j’ai posé la question à BARD :slight_smile:

Non, l’installation de la librairie Selenium n’installe pas ChromeDriver par défaut. ChromeDriver est un pilote Web qui permet à Selenium de contrôler un navigateur Chrome. Il doit être installé séparément.
Vous pouvez installer ChromeDriver manuellement en téléchargeant le fichier exécutable approprié à partir du site Web de ChromeDriver. Une fois que vous avez téléchargé le fichier exécutable, vous pouvez le placer dans un emplacement approprié et le rendre exécutable.
Pour que Selenium puisse utiliser ChromeDriver, vous devez spécifier l’emplacement du pilote Web dans votre code Selenium. Vous pouvez faire cela en utilisant la propriété executable_path de la classe WebDriver. Par exemple, pour spécifier l’emplacement du pilote Web dans le dossier /usr/bin/chromedriver

Je suppose que tu connais tout ca pas coeur :slight_smile:

Pourquoi sur certaine conf il n’install pas le chromedriver…

peux être que dans l’installation des dépendances il faudrait ajouter un check de cette partie et lancer l’installation individuellement ?

si j’essaye d’installer Chromedriver

eedom@JeedomAtlas:/var/www/html/plugins/noip/resources$ sudo apt-get install -y chromedriver
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Aucune version du paquet chromedriver n'est disponible, mais il existe dans la base
de données. Cela signifie en général que le paquet est manquant, qu'il est devenu obsolète
ou qu'il n'est disponible que sur une autre source

E: Le paquet « chromedriver » n'a pas de version susceptible d'être installée

j’ai du passer cette commande :

jeedom@JeedomAtlas:/var/www/html/plugins/noip/resources$ sudo apt-get install -y chromium chromium-common chromium-driver

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
chromium est déjà la version la plus récente (89.0.4389.114-1~deb10u1).
chromium-common est déjà la version la plus récente (89.0.4389.114-1~deb10u1).
chromium-common passé en « installé manuellement ».
Les NOUVEAUX paquets suivants seront installés :
  chromium-driver
0 mis à jour, 1 nouvellement installés, 0 à enlever et 201 non mis à jour.
Il est nécessaire de prendre 4 157 ko dans les archives.
Après cette opération, 12,3 Mo d'espace disque supplémentaires seront utilisés.
Réception de :1 http://deb.debian.org/debian buster/main arm64 chromium-driver arm64 89.0.4389.114-1~deb10u1 [4 157 kB]
4 157 ko réceptionnés en 0s (20,0 Mo/s)
Sélection du paquet chromium-driver précédemment désélectionné.
(Lecture de la base de données... 63331 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../chromium-driver_89.0.4389.114-1~deb10u1_arm64.deb ...
Dépaquetage de chromium-driver (89.0.4389.114-1~deb10u1) ...
Paramétrage de chromium-driver (89.0.4389.114-1~deb10u1) ...

maintenant j’ai bien la version qui remonte

jeedom@JeedomAtlas:/var/www/html/plugins/noip/resources$ chromedriver --version
ChromeDriver 89.0.4389.114 (1ea76e193b4fadb723bfea2a19a66c93a1bc0ca6-refs/branch-heads/4389@{#1616})

mais j’ai une nouvelle erreur :frowning:

[2023-12-02 11:38:23]INFO : Log level : info
[2023-12-02 11:38:23]INFO : User : xxxxxxxxxxxxxxxxxx
[2023-12-02 11:38:23]INFO : Threshold : 7
[2023-12-02 11:38:23]INFO : Renew : 0
[2023-12-02 11:38:24]INFO : Start running process
[2023-12-02 11:38:24]INFO : Opening https://www.noip.com/login...
[2023-12-02 11:38:27]INFO : Logging in...
[2023-12-02 11:38:36]INFO : Opening https://my.noip.com/dynamic-dns...
[2023-12-02 11:38:43]INFO : Message: no such element: Unable to locate element: {"method":"xpath","selector":".//following-sibling::td[4]/button[contains(@class, 'btn')]"}
(Session info: headless chrome=xxxxx); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception
Stacktrace:
#0 0xaaaac801dd48 
#1 0xaaaac7fc06cc 
#2 0xaaaac7d53d84 
#3 0xaaaac7d80e08 
#4 0xaaaac7d79ae0 
#5 0xaaaac7daeac8 
#6 0xaaaac7d77f50 
#7 0xaaaac7d793d4 
#8 0xaaaac7febec8 
#9 0xaaaac7ff9aa0 
#10 0xaaaac7ff9804 
#11 0xaaaac7ffdcbc 
#12 0xaaaac7ffa240 
#13 0xaaaac7fe216c 
#14 0xaaaac8010b3c 
#15 0xaaaac8028398 
#16 0xffff93f357e4 start_thread
#17 0xffff935edadc 
[2023-12-02 11:38:44]ERROR : [Multimédia][NoIP] error while executing Python script: Message: no such element: Unable to locate element: {"method":"xpath","selector":".//following-sibling::td[4]/button[contains(@class, 'btn')]"}   (Session info: headless chrome=89.0.4389.114); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception Stacktrace: #0 0xaaaac801dd48  #1 0xaaaac7fc06cc  #2 0xaaaac7d53d84  #3 0xaaaac7d80e08  #4 0xaaaac7d79ae0  #5 0xaaaac7daeac8  #6 0xaaaac7d77f50  #7 0xaaaac7d793d4  #8 0xaaaac7febec8  #9 0xaaaac7ff9aa0  #10 0xaaaac7ff9804  #11 0xaaaac7ffdcbc  #12 0xaaaac7ffa240  #13 0xaaaac7fe216c  #14 0xaaaac8010b3c  #15 0xaaaac8028398  #16 0xffff93f357e4 start_thread #17 0xffff935edadc 

J’essaye d’avancer, j’ai installer la version beta pour voir

Je suis retomber sur le problème initiale de ce post, j’ai donc fait la modification du script

mais j’ai toujours cette nouvelle erreur :

log en debug :

[2023-12-03 16:48:31]DEBUG : Task 'syncNoIp' executed now
[2023-12-03 16:48:32]INFO : Début de synchronisation
[2023-12-03 16:48:32]INFO : Starting daemon with cmd >>sudo python3 /var/www/html/plugins/noip/core/class/../../resources/noip-renew.py  --loglevel info --user xxxxxxxxxxxxxx --pwd "***********" --threshold 7 --renew 0 --noip_path /var/www/html/plugins/noip/core/class/../..<<
[2023-12-03 16:48:32]INFO : Log level : info
[2023-12-03 16:48:32]INFO : User : xxxxxxxxxxx
[2023-12-03 16:48:32]INFO : Threshold : 7
[2023-12-03 16:48:32]INFO : Renew : 0
[2023-12-03 16:48:34]INFO : Start running process
[2023-12-03 16:48:34]INFO : Opening https://www.noip.com/login...
[2023-12-03 16:48:36]INFO : Logging in...
[2023-12-03 16:48:46]INFO : Opening https://my.noip.com/dynamic-dns...
[2023-12-03 16:48:53]INFO : Message: no such element: Unable to locate element: {"method":"xpath","selector":".//following-sibling::td[4]/button[contains(@class, 'btn')]"}
(Session info: headless chrome=89.0.4389.114); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception
Stacktrace:
#0 0xaaaab5b0cd48 
#1 0xaaaab5aaf6cc 
#2 0xaaaab5842d84 
#3 0xaaaab586fe08 
#4 0xaaaab5868ae0 
#5 0xaaaab589dac8 
#6 0xaaaab5866f50 
#7 0xaaaab58683d4 
#8 0xaaaab5adaec8 
#9 0xaaaab5ae8aa0 
#10 0xaaaab5ae8804 
#11 0xaaaab5aeccbc 
#12 0xaaaab5ae9240 
#13 0xaaaab5ad116c 
#14 0xaaaab5affb3c 
#15 0xaaaab5b17398 
#16 0xffff984f97e4 start_thread
#17 0xffff97bb1adc 
[2023-12-03 16:48:53]DEBUG : [Multimédia][NoIP] file content: {"msg": "Message: no such element: Unable to locate element: {\"method\":\"xpath\",\"selector\":\".//following-sibling::td[4]/button[contains(@class, 'btn')]\"}
(Session info: headless chrome=89.0.4389.114); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception
Stacktrace:
#0 0xaaaab5b0cd48 
#1 0xaaaab5aaf6cc 
#2 0xaaaab5842d84 
#3 0xaaaab586fe08 
#4 0xaaaab5868ae0 
#5 0xaaaab589dac8 
#6 0xaaaab5866f50 
#7 0xaaaab58683d4 
#8 0xaaaab5adaec8 
#9 0xaaaab5ae8aa0 
#10 0xaaaab5ae8804 
#11 0xaaaab5aeccbc 
#12 0xaaaab5ae9240 
#13 0xaaaab5ad116c 
#14 0xaaaab5affb3c 
#15 0xaaaab5b17398 
#16 0xffff984f97e4 start_thread
#17 0xffff97bb1adc 
"}
[2023-12-03 16:48:53]ERROR : [Multimédia][NoIP] error while executing Python script: Message: no such element: Unable to locate element: {"method":"xpath","selector":".//following-sibling::td[4]/button[contains(@class, 'btn')]"}   (Session info: headless chrome=89.0.4389.114); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception Stacktrace: #0 0xaaaab5b0cd48  #1 0xaaaab5aaf6cc  #2 0xaaaab5842d84  #3 0xaaaab586fe08  #4 0xaaaab5868ae0  #5 0xaaaab589dac8  #6 0xaaaab5866f50  #7 0xaaaab58683d4  #8 0xaaaab5adaec8  #9 0xaaaab5ae8aa0  #10 0xaaaab5ae8804  #11 0xaaaab5aeccbc  #12 0xaaaab5ae9240  #13 0xaaaab5ad116c  #14 0xaaaab5affb3c  #15 0xaaaab5b17398  #16 0xffff984f97e4 start_thread #17 0xffff97bb1adc 
[2023-12-03 16:48:53]INFO : Fin de la synchronisation

Je ne sais pas si BARD sait mieux que l editeur lui meme, et donc cf ce qu on a deja échangé plus haut :


La nouvelle erreur :
On essaie de trouver un bouton specifique sur la page pour « cliquer » dessus → on ne trouve pas ce bouton.
Il faudrait regarder les ecrans que l on voit depuis la page principale du plugin sous « screenshots »

By the way, la dernière version de chromedriver dispo est la 119 !
C est donc aussu pr ca que je ne veux pas l installer a la main :wink:

J’ai la même depuis pas longtemps…