HtmlAgilityPack est une bibliothèque de classes d'élément HTML d'analyse open source. La plus grande fonctionnalité est qu'elle peut analyser HMTL via XPath. Si vous avez déjà utilisé C# pour faire fonctionner XML, vous vous sentirez à l'aise avec HtmlAgilityPack. La dernière version est la 1.4.6. L'adresse de téléchargement est la suivante : http://htmlagilitypack.codeplex.com/Ce qui suit est un exemple simple pour présenter l'utilisation de HtmlAgilityPack. Pour
Asp.NetLorsqu'un site Web développé par un programme doit simuler la connexion, en plus de connaître le nom
attributvaleurs de la zone de texte du nom d'utilisateur et de la zone de texte du mot de passe, il doit connaître le VIEWSTATE et l'EVENTVALIDATION de la page. Les valeurs des deux contrôles cachés et l'attribut name du bouton de soumission . Voyons comment utiliser HtmlAgilityPack pour obtenir. cette valeur supplémentaire. 1. Ajoutez une référence à HtmlAgilityPack.dll dans le projet
2. Mettez plusieurs contrôles de zone de texte et un contrôle de bouton dans la page Aspx3. Les événements d'arrière-plan du bouton sont les suivants
4. En prenant l'interface de connexion du Blog Park comme exemple, l'interface obtenue. est la suivante
protected void btnHtml_Click(object sender, EventArgs e) { if (tbUrl.Text.Length > 0) { HtmlWeb htmlWeb = new HtmlWeb(); HtmlDocument htmlDoc = htmlWeb.Load(this.tbUrl.Text); HtmlNode htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@id='VIEWSTATE']"); string viewStateValue = htmlNode.Attributes["value"].Value; htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@id='EVENTVALIDATION']"); string eventValidation = htmlNode.Attributes["value"].Value; htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@type='submit']"); string submitName = htmlNode.Attributes["name"].Value; tbViewState.Text = viewStateValue; tbEventValidation.Text = eventValidation; tbSubmitName.Text = submitName; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!