Comment puis-je obtenir une seule image d'un site Web à l'aide de HtmlAgilityPack ?


matibohemio8

J'essaie de gratter un magasin en utilisant HtmlAgilityPack, j'ai le titre du produit, le prix, le stock mais il me manque l'image. J'ai cherché comment obtenir des images à l'aide d'Agility Pack, mais tout ce que j'ai trouvé, c'est comment obtenir toutes les images du site Web, pas une seule. J'ai essayé de sélectionner le nœud unique où se trouve l'image, en faisant quelque chose comme ceci: var imgNode = doc.DocumentNode.SelectSingleNode("//div[@class = 'featured']");En faisant cela, la valeur imgNode est égale à l'ensemble de l'élément html img id, mais je veux obtenir uniquement la source actuelle à partir de la valeur src. Le lien du magasin que j'essaie de gratter est le suivant : "https://www.fullh4rd.com.ar/prod/18381/monitor-27-gigabyte-g27fc-gaming-curvo-ips-165hz-hdmi-dp " Merci pour votre temps ^^

Terrance00

L' srcélément dans un élément html, lorsqu'il est considéré comme un simple attribut, peut être récupéré par sa propriété attributs.

Cependant, le code ci-dessus sélectionne un div, donc une fois que vous avez sélectionné l' imgélément enfant , vous pouvez accéder à sa source :

var imgContainer = document.DocumentNode.SelectSingleNode("//div[@class = 'featured']");

var imgNode = imgContainer.SelectSingleNode("//img");

var src = imgNode.Attributes["src"].Value;

Vous pouvez également trouver le imgdirectement en utilisant l'identifiant :

var imgContainer = document.DocumentNode.SelectSingleNode("//img[@id = 'mainpic']");
Console.WriteLine(imgContainer.Attributes["src"].Value);

Articles connexes


Comment extraire une image d'un site Web à l'aide de Flutter?

KylianMbappe Salut, j'essaie de faire une tâche simple d'obtenir l'url img src d'un site Web, mais je n'arrive pas à le faire, j'ai essayé divers packages de flutter et maintenant je suis revenu à vanilla Flutter. Voici mon code: onPressed: () async {