IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Réadaptation d'un code python de Windows sur Linux


Sujet :

Python

  1. #1
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut Réadaptation d'un code python de Windows sur Linux
    Bonjour,

    j'ai un script python qu'il faudrait réadapté pour qu'il passer sur un serveur Linux.
    Ce n'est pas moi qui ait développé le code. Je cherche donc un développeur (prix à négocier) pur effectuer cette réadaptation.
    Voici un exemple de première erreur que j'ai en lançant le script sur un serveur linux (chez mon hébergeur) :

    Nom : 2023-01-24 15_53_59-(993) Discord _ @Garyy.png
Affichages : 396
Taille : 137,2 Ko

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 801
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 801
    Billets dans le blog
    1
    Par défaut
    Bonjour

    D'après l'erreur ce ne sera pas évident. En effet, l'erreur indique que l'objet "Service", sous Linux, ne possède pas de méthode "process()" (probablement spécifique Windows).
    Cela veut dire qu'il faudra trouver des équivalents ou des contournements Linux à des actions Windows...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 681
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    D'après l'erreur ce ne sera pas évident. En effet, l'erreur indique que l'objet "Service", sous Linux, ne possède pas de méthode "process()" (probablement spécifique Windows).
    ou que le code Windows s'appuie sur des versions anciennes... et qu'il y a un minimum d'étude de l'existant à faire avant de. Mais ce n'est pas le bon forum pour recruter des programmeurs qui pourront faire un devis et réaliser la prestation.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Si vous avez un bon forum à me conseiller je suis preneur ;-)

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 681
    Par défaut
    Citation Envoyé par sam01 Voir le message
    Si vous avez un bon forum à me conseiller je suis preneur ;-)
    Cherchez sur Internet des sites de freelance ou autres programmeurs.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 304
    Par défaut
    Salut,

    Ce qui est surprenant c'est que l'erreur est levée dans /selenium/webdriver/common/service.py

    ... ?

  7. #7
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Salut,

    Citation Envoyé par VinsS Voir le message
    Salut,

    Ce qui est surprenant c'est que l'erreur est levée dans /selenium/webdriver/common/service.py

    ... ?
    Bien vu

    Du coup, passage Windows ➤ Linux, il est fort probable que chromedriver ne soit pas installé et que son chemin doit être précisé dans les paramètres de selenium.

  8. #8
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Ha ben avant de faire appel à un dev, je vais essayer de voir si je peux faire ça tout seul en mettant le chemin de chromedriver comme tu le le suggère. Je ne sais pas si ça va suffire mais on verra bien. Merci

  9. #9
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Citation Envoyé par sam01 Voir le message
    Ha ben avant de faire appel à un dev, je vais essayer de voir si je peux faire ça tout seul en mettant le chemin de chromedriver comme tu le le suggère. Je ne sais pas si ça va suffire mais on verra bien. Merci
    Tu peux le faire, sans avoir à télécharger manuellement chromedriver, il faut installer webdriver-manager qui téléchargera automatique le driver:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pip install webdriver-manager
    Et la syntaxe qui fonctionne encore mais est maintenant obsolète:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     driver = webdriver.Chrome("path_driver")
    à remplacer par:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    from selenium.webdriver.chrome.service import Service
    from webdriver_manager.chrome import ChromeDriverManager
    #
    #
    driver = webdriver.Chrome(ChromeDriverManager().install())

  10. #10
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Ha mais trop Merci diablo76.
    Je vais faire ça ce soir. Je vous dit si ça à fonctionné 😀

  11. #11
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 681
    Par défaut
    Citation Envoyé par Diablo76 Voir le message
    Du coup, passage Windows ➤ Linux, il est fort probable que chromedriver ne soit pas installé et que son chemin doit être précisé dans les paramètres de selenium.
    La lecture des sources du module donne à penser qu'on aurait eu un message d'erreur explicite un peu avant.

    - w
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  12. #12
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    La lecture des sources du module donne à penser qu'on aurait eu un message d'erreur explicite un peu avant.

    - w
    Effectivement , du coup on tombe sur ce ticket de 2016.
    A voir si une MàJ de selenium est nécessaire...

  13. #13
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Je fais la modif ou ça sert à rien ?

  14. #14
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 681
    Par défaut
    Citation Envoyé par sam01 Voir le message
    Je fais la modif ou ça sert à rien ?
    Faire le changement et constater le résultat ne coute pas grand chose (surtout si ça marche).
    Et si ça ne marche pas, vous ne serez pas plus avancé...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  15. #15
    Membre Expert
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 617
    Par défaut
    Selenium change en permanence sous linux. J'ai eu ce pb de "Service" pour la première fois cette année. Tous les ans, il faut s'adapter.

  16. #16
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Bonjour,

    j'ai effectué les changements mais j'ai l'erreur suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    [WDM] - Downloading: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 6.96M/6.96M [00:00<00:00, 53.5MB/s]
    /home/swapnfly/mypythonapp/main-no-prompt.py:19: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
      driver = webdriver.Chrome(ChromeDriverManager().install())
    Traceback (most recent call last):
      File "/home/swapnfly/mypythonapp/main-no-prompt.py", line 19, in <module>
        driver = webdriver.Chrome(ChromeDriverManager().install())
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 80, in __init__
        super().__init__(
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 101, in __init__
        self.service.start()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 104, in start
        self.assert_process_still_running()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 117, in assert_process_still_running
        raise WebDriverException(f"Service {self.path} unexpectedly exited. Status code was: {return_code}")
    selenium.common.exceptions.WebDriverException: Message: Service /home/swapnfly/.wdm/drivers/chromedriver/linux64/109.0.5414/chromedriver unexpectedly exited. Status code was: -5

  17. #17
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Citation Envoyé par sam01 Voir le message
    Bonjour,

    j'ai effectué les changements mais j'ai l'erreur suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    [WDM] - Downloading: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 6.96M/6.96M [00:00<00:00, 53.5MB/s]
    /home/swapnfly/mypythonapp/main-no-prompt.py:19: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
      driver = webdriver.Chrome(ChromeDriverManager().install())
    Traceback (most recent call last):
      File "/home/swapnfly/mypythonapp/main-no-prompt.py", line 19, in <module>
        driver = webdriver.Chrome(ChromeDriverManager().install())
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 80, in __init__
        super().__init__(
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 101, in __init__
        self.service.start()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 104, in start
        self.assert_process_still_running()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 117, in assert_process_still_running
        raise WebDriverException(f"Service {self.path} unexpectedly exited. Status code was: {return_code}")
    selenium.common.exceptions.WebDriverException: Message: Service /home/swapnfly/.wdm/drivers/chromedriver/linux64/109.0.5414/chromedriver unexpectedly exited. Status code was: -5
    Oupps, la bonne syntaxe est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

  18. #18
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Traceback (most recent call last):
      File "/home/swapnfly/mypythonapp/main-no-prompt.py", line 19, in <module>
        driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 80, in __init__
        super().__init__(
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 101, in __init__
        self.service.start()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 104, in start
        self.assert_process_still_running()
      File "/home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 117, in assert_process_still_running
        raise WebDriverException(f"Service {self.path} unexpectedly exited. Status code was: {return_code}")
    selenium.common.exceptions.WebDriverException: Message: Service /home/swapnfly/.wdm/drivers/chromedriver/linux64/109.0.5414/chromedriver unexpectedly exited. Status code was: -5
    je l'ai codé comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    from selenium import webdriver
    import time
    from bs4 import BeautifulSoup
    import requests
    from web3 import Web3
    from ens import ENS
    from selenium import webdriver
    from selenium.common.exceptions import TimeoutException
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    from selenium.webdriver.chrome.service import Service
    from webdriver_manager.chrome import ChromeDriverManager
    import csv
    from tqdm import tqdm
    import os
     
     
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

  19. #19
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Là je ne vois pas le problème, quelle est ta version de Selenium ?

    Chez moi c'est la 4.8.0

  20. #20
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    ((mypythonapp:3.10)) [swapnfly@world-202 mypythonapp]$ pip show selenium
    Name: selenium
    Version: 4.8.0
    Summary:
    Home-page: https://www.selenium.dev
    Author:
    Author-email:
    License: Apache 2.0
    Location: /home/swapnfly/virtualenv/mypythonapp/3.10/lib/python3.10/site-packages
    Requires: certifi, trio, trio-websocket, urllib3
    Required-by:

Discussions similaires

  1. Wine 4.0 : le logiciel pour faire tourner les applications Windows sur Linux et macOS est disponible
    Par Christian Olivier dans le forum Logiciels Libres & Open Source
    Réponses: 2
    Dernier message: 23/01/2019, 16h06
  2. VM windows sur linux sans gui
    Par Sparky95 dans le forum Virtualisation
    Réponses: 2
    Dernier message: 22/09/2018, 11h11
  3. Un langage haut niveau pour développer des applications windows sur linux
    Par defois.hugo dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 04/09/2016, 10h50
  4. Pourquoi mon code ne fonctionne pas sur Linux
    Par Amaury_35 dans le forum Langage
    Réponses: 2
    Dernier message: 24/08/2009, 09h58
  5. Réponses: 2
    Dernier message: 24/08/2007, 16h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo