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

C# Discussion :

HtmlAgilityPack - "Value cannot be null"


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Juin 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2010
    Messages : 23
    Points : 20
    Points
    20
    Par défaut HtmlAgilityPack - "Value cannot be null"
    Bonjour,

    J'ai un léger problème en ce qui concerne HtmlAgilityPack (Il s'agit d'un parser Html pour ceux qui ne connaissent pas).
    Mon problème est le suivant j'essaie de récupérer une valeur avec la ligne de code suivante :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    HtmlNode node = doc.DocumentNode.SelectNodes("//tr[@class='official verified yes']/td/span[@class='icons']/span[@class='i_icon i_audio_ja']/../../label").First()
    Cette ligne fonctionne très bien dans certains cas, par contre dans d'autres, j'obtiens une exception. Jusqu'ici c'est normal, car dans les sources que je récupère, la ligne en question n'existe pas toujours. Du coup je souhaitais la récupérer quand elle existe et simplement l'ignorer quand elle n'existe pas.

    Le problème c'est que visual me renvoie la même exception a chaque fois et ce même si je met des try/catch autour.
    L'exception en question c'est celle ci:
    "ArgumentNullException" avec pour message : "Value cannot be null".
    Donc je me demandais, s'il existait un moyen d'ignorer cette exception.
    J'ai bien essayé un if (), pour vérifier si c'était null, mais c'est pareil, ca me renvoie l'exception.
    De même j'ai aussi testé un .Count() pour voir s'il me retournait 0. Mais là encore j'ai droit à l'exception lorsque la balise n'existe pas.

    Si quelqu'un a une idée de comment contourner cette erreur, je suis preneur.
    Merci

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    N'appelles pas la méthode First() pour voir, je pense que tu n'auras plus d'exception.

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Juin 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2010
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    J'ai testé toutes les méthodes possibles et j'ai même pas pensé à tester sans...

    Quoiqu'il en soit, merci bien

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

Discussions similaires

  1. [Débutant] Value cannot be null
    Par kmahrez dans le forum Développement Sharepoint
    Réponses: 3
    Dernier message: 25/04/2013, 10h56
  2. value d'input, simple quote affichage coupé
    Par xouzi dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 30/03/2012, 09h29
  3. Double quote qui viennent de nulle part
    Par mioux dans le forum Coldfusion
    Réponses: 4
    Dernier message: 26/04/2007, 13h42

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