Question

J'utilise HtmlAgilityPack pour récupérer une table depuis une page Web.

HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load("http://test.com");

Je suis conscient que HtmlWeb a une propriété UserAgent, mais je ne sais pas comment je suis censé attacher un agent d'utilisateur à l'en-tête de la requête http.

HtmlWeb web = new HtmlWeb().UserAgent("asdf");

renvoie l'erreur

Error   1   Non-invocable member 'HtmlAgilityPack.HtmlWeb.UserAgent' cannot be used like a method.

http://htmlagilitypack.codeplex.com/discussions Les discussions sur le support HtmlAgilityPack apparaissent sous la forme de simples questions, mais personne à l'autre bout ne peut y répondre.

http://htmlagilitypack.codeplex.com/documentation Il n'y a PAS de documentation ici.

http://htmlagilitypack.codeplex.com/downloads/get/437942 J'ai essayé de télécharger la documentation, de trouver que le fichier chm semblait cassé ... Une erreur de navigation vers la page Web a été annulée lorsque je tente d'ouvrir quoi que ce soit dans la documentation chm.

Réponse acceptée

Il suffit de définir la propriété UserAgent de l'objet HtmlWeb après son instanciation.

HtmlWeb web = new HtmlWeb();
web.UserAgent = "your useragent string here";

Réponse populaire

HtmlWeb.UserAgent est une propriété, pas une méthode. Son résumé Intellisense est:

Obtient ou définit l'en-tête HTTP 1.1 de l'agent utilisateur envoyé lors d'un webrequest

Essayez quelque chose comme:

HtmlWeb web = new HtmlWeb();
web.UserAgent = "asdf"; // Replace this with your actual user agent :)


Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow