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 :

encoding : je me tire les cheveux [Python 3.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut encoding : je me tire les cheveux
    Bonjour,

    J'ai un énorme problème, je suis devenu chauve ... Non, je déconne, ce n'est pas un problème d'être chauve !
    Plus sérieusement, je m'entraine en ce moment à scraper des sites et je scrappe un site avec plus de 500 000 articles avec différentes langes, dont le japonais qui m'ennuie.
    Lorsque je veux écrire dans un fichier csv, je suis obligé de faire en encoding sinon Python me mets un message d'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    with open(f"{date}-données.csv","a",encoding="UTF-16") as fichier_extract:
                fichier_extract.write(f"{str(dico)}\n")
    Je suis allé à taton pour définir le meilleur encoding UTF-16 et UTF-8, voir d'autres mais je n'arrive jamais à un truc propre.
    Selon vous lequel utiliser pour gérer au mieux les différentes langues, les indices monétaires, etc etc ... sans contrarier Python ?

    N'ayant rien trouver comme encodage, je me suis dit "tant pis fais avec de toute façon le japonais te sert à rien" sauf que lorsque je veux convertir les données dans le fichier CSV, je ne sais quel séparateur mettre et qui me permettrait d'avoir une conversion propre par colonne ... J'ai essayé comme vous le voyez ci-dessous le signe § mais aussi le ù, le # le µ, etc etc mais à chaque fois j'ai pas mal de ligne qui merdent dans la conversion car le sigle apparait déjà dans le texte et donc n'est pas un séparateur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dico = "§".join([str(date),marque.strip(),description.strip(),prix.strip(),frais_port.strip(),pays.strip()])
    J'ai voulu mettre deux séparateurs car cela réduit la probabilité de les avoir à la suite dans un encodage pas terrible mais excel ne me le permets pas.

    J'ai ensuite essayé de nettoyer les textes avec caractères spéciaux avant l'écriture avec Python pour éviter l'encoding mais je n'y suis pas arrivé.

    Avez-vous une idée, sauriez-vous m'aider ?

    Un grand merci.

    Damien

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 654
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 654
    Par défaut
    Bonjour,

    ce n'est pas indiqué dans le code HTML des sites ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut Merci
    Salut,

    Effectivement, il y a marqué que c'est du UTF-8 au début du code, je vais regarder comment faire avec cette info.
    Encore merci.

    Damien

    Citation Envoyé par N_BaH Voir le message
    Bonjour,

    ce n'est pas indiqué dans le code HTML des sites ?

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Pour bien comprendre l'encoding, il faut connaitre la base. Et la base, pour Python3, c'est l'unicode. Toute chaine écrite en Python est écrite en unicode.
    Il convient donc, quand tu lis une data externe, de connaitre son encoding (ce qui rejoint ici la remarque de N_BaH sur le fait que cette info devrait être dispo quelque part) afin de pouvoir la convertir en unicode à l'entrée. Et il faut faire cette opération le plus tôt possible.
    Ensuite, dans ton code, t'es tranquille. Tu peux manipuler la data en interne, tout sera bien géré question encoding.
    Ensuite, à la sortie, il te faut convertir la data dans l'encoding cette fois de ton choix. Je vois que tu utilises utf-16 mais généralement le plus universel est l'utf-8 (ou alors tu veux réécrire le fichier dans son encoding originel).

    Après si par malchance tu ne connais pas l'encoding de tes datas input, il existe la librairie "chardet" qui peut le sniffer (il faut alors lire la data sous sa forme binaire) et te donner un résultat sous forme probabiliste
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> import chardet
    >>> with open("/etc/passwd", "rb") as fp:
    ...     chardet.detect(fp.read())
    ... 
    {'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
    >>>
    La probabilité est donnée dans le champ "confidence".
    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]

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut Merci
    Bonjour Sve@r,

    Merci pour cette réponse que je vais étudier.
    Le problème, comme certains ici sans doute et comme tu l'as bien marqué, c'est que je fais du python sans avoir de base du tout : j'essaie d'apprendre un peu la théorie chez moi et j'apprends aussi avec la pratique donc il y a énormément de choses que je ne maitrise pas, ne comprends pas ou n'imagine même pas que cela existe ...
    J'essaie pourtant de lire de la littérature mais l'autoformation a ses limites : j'y ai passé 4h hier pour essayer plein de choses, essayer plein d'encoding différents.

    Je vais regarder si je trouve une sorte d'information quelque part sur l'encoding "afin de pouvoir convertir en unicode à l'entrée" (même cette partie de phrase, je vais devoir la coder pour la comprendre

    Pour l'utf-16 que j'ai utilisé, j'y suis allé à taton comme je l'ai expliqué : j'ai encodé en utf-8 et ce n'était "pas joli" alors j'ai pris l'utf-16 qui est moins pire.
    C'est vraiment du pifomètre car je ne maitrise pas et fais des expériences sur le tas.

    Encore merci.

    Damien




    Citation Envoyé par Sve@r Voir le message
    Bonjour
    Pour bien comprendre l'encoding, il faut connaitre la base. Et la base, pour Python3, c'est l'unicode. Toute chaine écrite en Python est écrite en unicode.
    Il convient donc, quand tu lis une data externe, de connaitre son encoding (ce qui rejoint ici la remarque de N_BaH sur le fait que cette info devrait être dispo quelque part) afin de pouvoir la convertir en unicode à l'entrée. Et il faut faire cette opération le plus tôt possible.
    Ensuite, dans ton code, t'es tranquille. Tu peux manipuler la data en interne, tout sera bien géré question encoding.
    Ensuite, à la sortie, il te faut convertir la data dans l'encoding cette fois de ton choix. Je vois que tu utilises utf-16 mais généralement le plus universel est l'utf-8 (ou alors tu veux réécrire le fichier dans son encoding originel).

    Après si par malchance tu ne connais pas l'encoding de tes datas input, il existe la librairie "chardet" qui peut le sniffer (il faut alors lire la data sous sa forme binaire) et te donner un résultat sous forme probabiliste
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> import chardet
    >>> with open("/etc/passwd", "rb") as fp:
    ...     chardet.detect(fp.read())
    ... 
    {'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
    >>>
    La probabilité est donnée dans le champ "confidence".

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par damienvialla Voir le message
    c'est que je fais du python sans avoir de base du tout
    J'ai un peu envie de demander "est-ce la meilleure façon de faire du Python?"...

    Citation Envoyé par damienvialla Voir le message
    Je vais regarder si je trouve une sorte d'information quelque part sur l'encoding "afin de pouvoir convertir en unicode à l'entrée" (même cette partie de phrase, je vais devoir la coder pour la comprendre
    Quand tu lis l'info, tu précises "je la lis dans l'encoding dans lequel elle est encodée". Si c'est un fichier que tu lis, tu places cette indication à l'ouverture du fichier (fopen(..., "r", encoding=...)). Et dans le pire des cas, si ton outil de récupération de data ne permet pas de spécifier l'encoding alors tu lis la donnée sous sa forme brute (ie le binaire) ce qui te donne du bytes auquel tu peux appliquer la méthode "decode()" pour décoder son format ce qui te donne au final une chaine standard Python (donc unicode)
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >>> b=b"123"
    >>> print(b, type(b))
    b'123' <class 'bytes'>
    >>> s=b.decode("utf-8")
    >>> print(s, type(s))
    123 <class 'str'>
    >>> bb=s.encode("utf-8")
    >>> print(bb, type(bb))
    b'123' <class 'bytes'>
    >>> print(b == bb)
    True

    Citation Envoyé par damienvialla Voir le message
    Pour l'utf-16 que j'ai utilisé, j'y suis allé à taton comme je l'ai expliqué : j'ai encodé en utf-8 et ce n'était "pas joli"
    Si l'info d'origine n'est pas bien écrite, tu pourras l'encoder dans ce que tu veux, ça ne changera rien. L'encoding ce n'est pas la baguette magique de Cendrillon qui change la citrouille en carrosse, c'est juste une traduction. Métaphore: si tu écris un français approximatif et que tu le traduis en anglais, tu auras un anglais approximatif.
    Le point de départ c'est "la lecture de l'info". Tant que ce que tu lis ne sera pas récupéré nickel, rien ne pourra marcher. Mais à l'inverse, une fois que tu le lis correctement c'est réglé car tu le ressors ensuite comme tu en as envie.
    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]

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Par défaut
    En plus de figurer dans la section HEAD de la page scrappée, Il y a probablement un header HTTP qui indique l'encoding aussi.

    Et pour convertir d'un charset vers un autre, par exemple pour tout normaliser vers UTF-8 il y des outls comme iconv. Mais en fait les fonctions encode et decode de Python devraient déjà suffire.

    Effectivement ce sera du cas par cas. Pour des sites plus anciens dans nos contrées vous verrez souvent de l'encoding ISO8859-1 avec des variantes pour le cyrillique etc. Si vous traitez tout comme de l'Unicode certaines parties comme les accents seront mal interprétées et le texte deviendra relativement illisible.

  8. #8
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut
    Salut

    Je vais regarder cela.
    J'adore comme pour les "pro", la notion d'encodage et décodage parait naturelle ... Pour nous les padawan, c'est le côté obscure de la force

    Damien

    Citation Envoyé par binarygirl Voir le message
    En plus de figurer dans la section HEAD de la page scrappée, Il y a probablement un header HTTP qui indique l'encoding aussi.

    Et pour convertir d'un charset vers un autre, par exemple pour tout normaliser vers UTF-8 il y des outls comme iconv. Mais en fait les fonctions encode et decode de Python devraient déjà suffire.

    Effectivement ce sera du cas par cas. Pour des sites plus anciens dans nos contrées vous verrez souvent de l'encoding ISO8859-1 avec des variantes pour le cyrillique etc. Si vous traitez tout comme de l'Unicode certaines parties comme les accents seront mal interprétées et le texte deviendra relativement illisible.

  9. #9
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut
    J'ai un peu envie de te répondre ... Sve@r, ta question est rhétorique et toi comme moi on sait que ce n'est pas la bonne façon de faire mais je fais ce que je peux avec ce que j'ai.
    J'essaie la littérature internet, les vidéos youtube, les exos openclassroom, j'ai même acheté "le Python pour les nuls" ...
    Je me suis même dit que j'allais me payer un étudient proche de chez moi pour prendre des cours particuliers mais je dois faire attention aux finances étant au chomage.

    Je suis d'ailleurs entrain de voir avec pôle emploi quel serait la meilleur façon de faire

    En fait, j'essaie de scraper un site de montres (j'adore les montres) pour m'entrainer et certaines personnes écrivent en japonais donc quand je viens pomper le html entre balise, python bug ... Je vais regarder cette histoire de binaire et le décode.
    Après le japonais n'est pas trop un problème, c'est juste que ca me donne des caractères chelou qui fait que je ne peux pas séparer correctement mon fichier csv.
    J'ai alors regardé si avec Python on ne peut pas directement écrire dans des colonnes différentes ma liste et à priori y a un truc comme writer.writerow qui pourrait permettre, cela fait 2h que je suis dessus. Oui, je suis assez pugnace malgré mon incompétence

    J'adore ta métaphore, elle est très représentative et comme dit ma belle fille dans son talkie walkie : reçu 5/5.
    Maintenant il faut que j'arrive à bien comprendre comment bien lire ...
    On va essayer sur google : "comment bien lire un htm pour le parser et le mettre correctement en csv".

    Encore merci pour le temps que tu prends.

    Damien



    Citation Envoyé par Sve@r Voir le message
    J'ai un peu envie de demander "est-ce la meilleure façon de faire du Python?"...


    Quand tu lis l'info, tu précises "je la lis dans l'encoding dans lequel elle est encodée". Si c'est un fichier que tu lis, tu places cette indication à l'ouverture du fichier (fopen(..., "r", encoding=...)). Et dans le pire des cas, si ton outil de récupération de data ne permet pas de spécifier l'encoding alors tu lis la donnée sous sa forme brute (ie le binaire) ce qui te donne du bytes auquel tu peux appliquer la méthode "decode()" pour décoder son format ce qui te donne au final une chaine standard Python (donc unicode)
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >>> b=b"123"
    >>> print(b, type(b))
    b'123' <class 'bytes'>
    >>> s=b.decode("utf-8")
    >>> print(s, type(s))
    123 <class 'str'>
    >>> bb=s.encode("utf-8")
    >>> print(bb, type(bb))
    b'123' <class 'bytes'>
    >>> print(b == bb)
    True


    Si l'info d'origine n'est pas bien écrite, tu pourras l'encoder dans ce que tu veux, ça ne changera rien. L'encoding ce n'est pas la baguette magique de Cendrillon qui change la citrouille en carrosse, c'est juste une traduction. Métaphore: si tu écris un français approximatif et que tu le traduis en anglais, tu auras un anglais approximatif.
    Le point de départ c'est "la lecture de l'info". Tant que ce que tu lis ne sera pas récupéré nickel, rien ne pourra marcher. Mais à l'inverse, une fois que tu le lis correctement c'est réglé car tu le ressors ensuite comme tu en as envie.

  10. #10
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par damienvialla Voir le message
    j'ai même acheté "le Python pour les nuls" ...
    Dommage d'avoir payé un truc gratuit. Checke ma signature...

    Citation Envoyé par damienvialla Voir le message
    On va essayer sur google : "comment bien lire un htm pour le parser et le mettre correctement en csv".
    1) lire l'info
    2) l'écrire en CSV
    Pour le 1 bon ça dépend de l'outil que tu utilises. Mais pour le 2, tu as le module "csv" qui est fait pour ça (enfin il est surtout fait pour la lecture car c'est ce qu'il y a de plus dur, pour l'écriture il suffit d'écrire en texte avec un séparateur mais sinon il peut aussi écrire du CSV).

    Citation Envoyé par damienvialla Voir le message
    J'adore comme pour les "pro", la notion d'encodage et décodage parait naturelle
    En fait ce qui compte vraiment c'est le moment où tu lis l'info externe. C'est là que tu dis à Python "je lis tel encoding" et Python (enfin c'est plutôt l'outil de lecture) traduit ce qui est lu en unicode. Mais en plus vu que le header que tu nous as montrés semble indiquer que le site est en utf-8, tu ne devrais même pas avoir de souci vu que l'utf-8 est le standard (quand Python lit un truc sans spécification, il considère que c'est de l'utf-8 par défaut). Presque j'ai envie de dire que le souci se situerait dans ce que tu sors au final. Le seul indice c'est ce fichier_extract.write(f"{str(dico)}\n") qui m'ennuie un peu (que contient "dico"? Pourquoi forcer en str()???)
    Là un print(dico, type(dico)) pourrait apporter un éclaircissement...

    Citation Envoyé par damienvialla Voir le message
    Encore merci pour le temps que tu prends.
    Pas de souci, on est là pour ça.
    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]

  11. #11
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2023
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2023
    Messages : 33
    Par défaut
    Super Sve@r, j'avance comme colombo dans mon enquête, enfin je voulais dire comme l'inspecteur gadget plutôt ...
    Bref, effectivement j'ai vu qu'il y avait des infos sur le code html en début du site

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta content="width=device-width, initial-scale=1.0" name="viewport">
    <title>Chrono24 - vente et achat de montres de luxe à l'international</title>
    <meta name="description" content="Acheter&nbsp;&amp;&nbsp;vendre des montres neuves&nbsp;&amp;&nbsp;d'occasion sur Chrono24 et dans le monde entier. Plus de 500&nbsp;000 montres de marque de Rolex, Breitling, Omega et autres à des prix avantageux. Chrono24 a été fondé en 2003 et est le leader du marché mondial des montres de luxe en ligne.">
    <meta name="audience" content="all">
    <meta name="robots" content="index, follow, noodp">
    <meta name="language" content="fr">
    <meta name="distribution" content="global">
    <meta property="fb:admins" content="1278455374">
    <meta name="google-site-verification" content="wCf_m8eIu8KaUyYrUE4jd_g5Hhb98HUmdA0-qo9aJf0">
    A priori c'est de l'UTF-8. Je ne sais pas trop à quoi cela va me servir dans mon problème mais je vais essayer de regarder sur internet si je trouve des informations par rapport à ce que tu m'as écris, ainsi que N_Bah

    Damien

    Citation Envoyé par Sve@r Voir le message
    Bonjour
    Pour bien comprendre l'encoding, il faut connaitre la base. Et la base, pour Python3, c'est l'unicode. Toute chaine écrite en Python est écrite en unicode.
    Il convient donc, quand tu lis une data externe, de connaitre son encoding (ce qui rejoint ici la remarque de N_BaH sur le fait que cette info devrait être dispo quelque part) afin de pouvoir la convertir en unicode à l'entrée. Et il faut faire cette opération le plus tôt possible.
    Ensuite, dans ton code, t'es tranquille. Tu peux manipuler la data en interne, tout sera bien géré question encoding.
    Ensuite, à la sortie, il te faut convertir la data dans l'encoding cette fois de ton choix. Je vois que tu utilises utf-16 mais généralement le plus universel est l'utf-8 (ou alors tu veux réécrire le fichier dans son encoding originel).

    Après si par malchance tu ne connais pas l'encoding de tes datas input, il existe la librairie "chardet" qui peut le sniffer (il faut alors lire la data sous sa forme binaire) et te donner un résultat sous forme probabiliste
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> import chardet
    >>> with open("/etc/passwd", "rb") as fp:
    ...     chardet.detect(fp.read())
    ... 
    {'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
    >>>
    La probabilité est donnée dans le champ "confidence".

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. HTML encode UTF-8 et les accents
    Par Spir dans le forum Langage
    Réponses: 7
    Dernier message: 28/12/2008, 21h03
  2. Réponses: 3
    Dernier message: 06/09/2008, 01h18
  3. Couper les cheveux en 4
    Par kaukau dans le forum Haskell
    Réponses: 9
    Dernier message: 27/02/2008, 12h34
  4. X forwarding tiré par les cheveux
    Par Eusebius dans le forum Réseau
    Réponses: 32
    Dernier message: 16/06/2006, 10h16

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