Obtenir des liens de la page Web à la zone de texte (vb.net + pack d'agilité HTML)

html-agility-pack screen-scraping vb.net

Question

Je fais une application vb.net et je me sers de htmlagilitypack. J'ai besoin d’avoir les liens de profil de PagesJaunes.ca

Voici un exemple du code HTML:

<a href="/bus/Ontario/Brampton/A-Safe-Self-Storage/17142.html?what=af&amp;where=Ontario&amp;le=1238793c7aa%7Ccf8042ceaa%7C2ae32e5a2a" onmousedown="utag.link({link_name:'busname', link_attr1:'in_listing_left', listing_link:'18063_lpp|busname_af', headdir_link:'01252110|092202,00891210|092202,00184200|092202', position_address:'l_y', position_number:'l_6'});" id="mapLink5" title="See detailed information for A Safe Self Storage"><span class="listingTitle">A Safe Self Storage</span></a>

C’est le lien "/bus/Ontario/Brampton/A-Safe-Self-Storage/17142.html?what=af&where=Ontario&le=1238793c7aa%7Cf8042ceaa%7C2ae32e5a2a".

Un peu d'aide serait apprécié.

Réponse acceptée

Vous devez examiner la documentation.

Voici un exemple de lecture d'un fichier HTML stocké sur le PC

HtmlDocument doc = new HtmlDocument();
 doc.Load("file.htm");
 foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a[@href"])
 {
    HtmlAttribute att = link["href"];
    att.Value = FixLink(att);
 }
 doc.Save("file.htm");

Utilisez un convertisseur pour convertir en VB.NET. Cette ligne est la clé

Lien HtmlNode dans doc.DocumentElement.SelectNodes ("// a [@href"])

Encore une fois, vous devez lire la documentation et comprendre comment analyser le DOM HTML.

Voici un exemple de chargement et d’analyse d’une page Web. Vous devez utiliser "HttpWebRequest" pour diffuser la page Web à partir d'un serveur Web.

Lecture complémentaire ici




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi