Navigateur sans pour C# (.NET)?
Je suis (était) un développeur Python qui est la construction d'une interface graphique web grattage application. Récemment, j'ai décidé de migrer .NET framework et d'écrire la même application en C# (cette décision n'était pas la mienne).
En Python, j'ai utilisé le Mécaniser la bibliothèque. Cependant, je n'arrive pas à trouver quelque chose de semblable dans .NET. Ce dont j'ai besoin est un navigateur qui fonctionne en headless mode, qui a la capacité de remplir des formulaires, de les soumettre, etc. JavaScript parser n'est pas un must, mais il serait tout à fait utile.
- Un bricolage version qui n'a pas besoin d'une autre bibliothèque: stackoverflow.com/a/1995667/17034
- stackoverflow.com/questions/12059752/... Qui fonctionne pour mes besoins.
- Avez-vous regardé le Sélénium (c'est à dire avec tête chromée, sans tête, firefox, ou le obsolète phantomjs web pilote)?
- Envisager de migrer de la question softwarerecs.stackexchange.com
- Et avec le sélénium dans asp.net, headless chrome; ChromeOptions options = new ChromeOptions(); options.AddArgument ("--"headless"); using (var pilote = new ChromeDriver(options)) {...}
Vous devez vous connecter pour publier un commentaire.
Il y a quelques options:
WebKit.Net (gratuit)
Awesomium
Il est basé sur Chrome/WebKit et fonctionne comme un charme.
Il y a une licence libre, mais aussi commercial et, si besoin, vous pouvez acheter le code source 🙂
HTML Agility Pack (gratuit)
Cette aide à l'extraction d'informations à partir de HTML, etc ... et pourrait être utile dans votre cas (éventuellement en combinaison avec
HttpWebRequest
)Plus de solutions:
le navigateur. Souvent utilisé de paire avec le Sélénium qui vous permet de
accéder au navigateur de .NET application.
J'ai utilisé à la fois pour les tests de site web. Mais ils sont également appropriés pour le web scraping.
Vous avez peut-être après TrifleJS (actuellement en bêta), ou quelque chose de similaire à l'aide de la .NET WebBrowser classe qui communique avec IE via une fenêtre ActiveX/COM d'API.
Vous aurez essentiellement être en cours d'exécution à part entière navigateur (pas une requête http wrapper) à l'aide d'Internet Explorer Trident du moteur, si vous n'êtes pas intéressé par l'API JavaScript (un port de phantomjs), vous pourriez être en mesure d'utiliser du C# code pour obtenir autour de concepts clés (en-têtes personnalisés, les cookies, l'exécution du script, capture d'écran du rendu, etc).
Notez que cela peut aussi émuler différentes versions d'IE en fonction de ce que vous avez installés.