Comment puis-je cliquer sur un lien dans un HtmlNode

c#-4.0 html-agility-pack

Question

Je crée une application sans tête en C # et l'un de mes éléments HTML ressemble à

<input name="SUBMIT-chn.pss" title="Select" class="image  selectIcon" type="image" alt="Select" src="docs/pics/select.png">

Ma méthode ressemble à

    private void AddInputElement(HtmlNode element)
    {
        string name = element.GetAttributeValue("name", "");
        string value = element.GetAttributeValue("value", "");
        string type = element.GetAttributeValue("type", "");

        if (string.IsNullOrEmpty(name)) return;

        switch (type.ToLower())
        {                
            case "image":
                'I would like to do something like element.Click to go to the next page.
            default:
                Add(name, value);
                break;
        }
    }

J'utilise HtmlAgilityPack 1.4.9 avec .Net 4.5.2

Je vous remercie

Réponse acceptée

HtmlAgilityPack (HAP) n’est pas le bon outil pour ce type de tâche. Il ne s'agit que d'un analyseur HTML, qui vous permet d'extraire des informations du code HTML source, de modifier un peu du code HTML, etc. HAP fonctionne au niveau du balisage HTML et vous ne pouvez pas interagir avec les contrôles HTML via HAP.

Pour cliquer sur un lien, taper sur une zone de texte, etc., vous avez besoin d'un vrai navigateur ou de quelque chose qui imite un vrai navigateur. Vous voudrez peut-être examiner la liaison .NET de Selenium WebDriver à l’ aide du navigateur sans tête PhantomJS . Voir un exemple simple 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