[ERROR] : [Script Python] __init__() got an unexpected keyword argument 'firefox_profile'

bonjour,

depuis plusieurs jours je n’ai plus de remontée de conso en provenance du site Veolia IDF.
Voici le message d’erreur dans les logs :

[ERROR] : [Script Python] __init__() got an unexpected keyword argument 'firefox_profile'

+

Maison][Veolia Compteur Eau] Erreur de lancement du script : [ 0  ] consulter le log  pour plus d'info - Abandon
0458|[2023-09-17 22:37:25]WARNING : [Maison][Veolia Compteur Eau] Erreur de récupération des données - Abandon
0459|[2023-09-17 23:37:11]ERROR : [Maison][Veolia Compteur Eau] Aucune donnée n'a pu être récupérée pour la journée du 2023-09-16
0460|[2023-09-18 04:37:11]DEBUG : [Maison][Veolia Compteur Eau] le 17/09/2023 : données déjà présentes pour la commande Conso Annuelle mais Force Refresh activé
0461|[2023-09-18 04:37:11]DEBUG : [Maison][Veolia Compteur Eau] le 17/09/2023 : données déjà présentes pour la commande Conso Hebdo mais Force Refresh activé
0462|[2023-09-18 04:37:11]DEBUG : [Maison][Veolia Compteur Eau] le 17/09/2023 : données déjà présentes pour la commande Conso Jour mais Force Refresh activé
0463|[2023-09-18 04:37:11]DEBUG : [Maison][Veolia Compteur Eau] le 17/09/2023 : données déjà présentes pour la commande Conso Mensuelle mais Force Refresh activé
0464|[2023-09-18 04:37:11]DEBUG : [Maison][Veolia Compteur Eau] le 17/09/2023 : données déjà présentes pour la commande Index mais Force Refresh activé

Merci de votre aide.

Le pb semble lié à la version de Selenium. En attendant que je regadre plus précisément.

Peux-tu downgrader la version de selenium en attendant (chez moi cette version fonctionne) :

pip install selenium==3.141.0

Bonjour,

Cela ne marche pas pour moi. Cependant, je ne suis pas sûr d’avoir effectué la bonne manipulation.
En effet, lorsque je tape dans un terminal :

jeedom@raspberrypi:~ $ pip install selenium==3.141.0
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: selenium==3.141.0 in ./.local/lib/python2.7/site-packages (3.141.0)
Requirement already satisfied: urllib3 in /usr/lib/python2.7/dist-packages (from selenium==3.141.0) (1.24.1)
jeedom@raspberrypi:~ $

Par contre, dans teleo:

0149|Résumé installation :
0150|1. Mozilla Firefox 102.15.1esr
0151|2. geckodriver :
0152|aarch64 geckodriver 0.32.0 (4563dd583110 2022-10-13 09:22 +0000)
0153|The source code of this program is available from
0154|testing/geckodriver in https://hg.mozilla.org/mozilla-central.
0155|This program is subject to the terms of the Mozilla Public License 2.0.
0156|You can obtain a copy of the license at https://mozilla.org/MPL/2.0/.
0157|3. Packages:
0158|firefox-esr					install
0159|python3-pip					install
0160|xvfb						install
0161|4. Python 3.7.3
0162|5. Python modules:
0163|PyVirtualDisplay    3.0
0164|selenium            4.11.2
0165|urllib3             2.0.4

Apparement, il y a une différence de version pour selenium entre le plugin teleo et le pi.
Pouvez-vous m’éclairer ?

Cordialement,

Désolé, essaie plutôt :

Bonjour,
cela ne fonctionne malheureusement toujours pas.

Pour être sûr d’avoir enlevé et installé la bonne version, j’ai effectué aussi:

jeedom@raspberrypi:~ $ sudo pip3 uninstall selenium
Uninstalling selenium-4.12.0:
  Would remove:
    /usr/local/lib/python3.7/dist-packages/selenium-4.12.0.dist-info/*
    /usr/local/lib/python3.7/dist-packages/selenium/*
Proceed (y/n)? y
  Successfully uninstalled selenium-4.12.0
jeedom@raspberrypi:~ $ sudo pip3 uninstall selenium
Skipping selenium as it is not installed.
jeedom@raspberrypi:~ $ pip3 install selenium==3.141.0
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: selenium==3.141.0 in ./.local/lib/python3.7/site-                                                                                                                                                    packages (3.141.0)
Requirement already satisfied: urllib3 in /usr/local/lib/python3.7/dist-packages                                                                                                                                                     (from selenium==3.141.0) (2.0.4)

Maintenant dans le fichier log du cron-execution je me retrouve avec l’erreur suivante :

0070|/var/www/html/plugins/teleo/resources/get_veolia_data.sh: command substitution: ligne 27: erreur de syntaxe pr?s du symbole inattendu ? ( ?
0071|/var/www/html/plugins/teleo/resources/get_veolia_data.sh: command substitution: ligne 27: `$python --version 2>&1 | grep -Ec 3\.(7|9)\.)'
0072|Traceback (most recent call last):
0073|File "/var/www/html/plugins/teleo/resources/get_veolia_idf_consommation.py", line 5, in 
0074|from selenium import webdriver
0075|ModuleNotFoundError: No module named 'selenium'

cordialement,

Tu peux me dire ce que retourne la commande suivante :

pip3 list | grep -E "selenium|PyVirtualDisplay|urllib3"

et

python3 --version

jeedom@raspberrypi:~ $ pip3 list | grep -E "selenium|PyVirtualDisplay|urllib3"
PyVirtualDisplay    3.0
selenium            3.141.0
urllib3             2.0.4
jeedom@raspberrypi:~ $ python3 --version
Python 3.7.3

Cordialement,

hello @Aegis,

j’ai suivi tes instructions.

Avant :
pip3 list | grep -E « selenium|PyVirtualDisplay|urllib3 »
PyVirtualDisplay 3.0
selenium 4.11.2
urllib3 2.0.4

Ensuite j’ai passé la commande pip3 install selenium==3.141.0

Après :
PyVirtualDisplay 3.0
selenium 3.141.0
urllib3 2.0.4

Malheureusement pas d’amélioration toujours ces erreurs :

> DEBUG :Commande : sudo  /var/www/html/plugins/teleo/resources/get_veolia_data.sh IDF 'Loginxxxx' "Passwordxxxxx" /tmp/teleo 100
> WARNING : [Maison][Veolia Compteur Eau] Erreur de lancement du script : [ 0  ] consulter le log  pour plus d'info - Abandon
> WARNING : [Maison][Veolia Compteur Eau] Erreur de récupération des données - Abandon
> 
> INFO :[Script Python] Initialisation browser
> ERROR : [Script Python] __init__() got an unexpected keyword argument 'firefox_profile'
> DEBUG : [Script Python] Taking screenshot : Exception
> DEBUG : [Script Python] Fermeture connexion
> INFO : [Script Python] Fermeture display. Exit code 0
> DEBUG : [Script Python] unset $DISPLAY
> DEBUG : [Script Python] stdout=b''
> DEBUG : [Script Python] stderr=b''
> 
> 
> ********************************************************
> Install Python3 and dependencies
> ********************************************************
> Reading package lists...
> Building dependency tree...
> Reading state information...
> python3 is already the newest version (3.7.3-1).
> python3-pip is already the newest version (18.1-5+rpt1).
> 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
> ********************************************************
> Python3 'selenium' module
> ********************************************************
> Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
> Requirement already satisfied: selenium in /usr/local/lib/python3.7/dist-packages (4.11.2)
> Requirement already satisfied: urllib3[socks]<3,>=1.26 in /usr/local/lib/python3.7/dist-packages (from selenium) (2.0.4)
> 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.10.3)
> Requirement already satisfied: certifi>=2021.10.8 in /usr/local/lib/python3.7/dist-packages (from selenium) (2023.7.22)
> 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.4)
> Requirement already satisfied: outcome in /usr/local/lib/python3.7/dist-packages (from trio~=0.17->selenium) (1.2.0)
> 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.1.3)
> 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) (6.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)
> 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
> ********************************************************
> Python3 'pyvirtualdisplay' module
> ********************************************************
> Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
> Requirement already satisfied: pyvirtualdisplay in /usr/local/lib/python3.7/dist-packages (3.0)
> 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
> ********************************************************
> Python3 'urllib3' module
> ********************************************************
> Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
> Requirement already satisfied: urllib3 in /usr/local/lib/python3.7/dist-packages (2.0.4)
> 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
> ********************************************************
> Installation terminée
> ********************************************************
> Résumé installation :
> 1. Mozilla Firefox 102.15.1esr
> 2. geckodriver :
> aarch64 geckodriver 0.32.0 (4563dd583110 2022-10-13 09:22 +0000)
> The source code of this program is available from
> testing/geckodriver in https://hg.mozilla.org/mozilla-central.
> This program is subject to the terms of the Mozilla Public License 2.0.
> You can obtain a copy of the license at https://mozilla.org/MPL/2.0/.
> 3. Packages:
> firefox-esr					install
> python3-pip					install
> xvfb						install
> 4. Python 3.7.3
> 5. Python modules:
> PyVirtualDisplay     3.0
> selenium             4.11.2
> urllib3              2.0.4


En espérant que ces informations te seront utiles

Bonjour,

A titre informatif, j’ai fait la mise à jour avec la nouvelle version mise en ligne le 09/10/2023, et le problème est résolu.

Merci Aegis,

Cordialement,

1 « J'aime »

bonjour @cdr93,

merci bien effectivement je confirme tout refonctionne correctement.

Salutations

1 « J'aime »