9
votes

Obtenez la source HTML générée finale à l'aide de C # ou VB.NET

à l'aide de vb.net ou C #, comment puis-je obtenir la source HTML générée?

Pour obtenir la source HTML d'une page, je peux l'utiliser ci-dessous, mais ce n'est pas la source générée, elle ne contiendra aucun des Le HTML qui a été ajouté de manière dynamique par le JavaScript dans le navigateur. Comment puis-je obtenir la source HTML finale générée?

merci xxx

si j'essaie ceci ci-dessous, il renvoie le document avec le code JavaScript injecté xxx

html renvoyé xxx


3 commentaires

Utilisez le contrôle WebBrowser.


Avez-vous un exemple? L'avez-vous fait auparavant, comme j'essayais cela, mais je ne pouvais pas le faire fonctionner?


Avez-vous déjà compris cela @ Bonjour-monde? J'ai le même problème et j'ai essayé d'utiliser le nouveau contrôle WebView2 de MS, mais toujours pas d'amour!


3 Réponses :


2
votes

Vous pouvez utiliser webkit.net

regarde ici pour des tutoriels officiels

Ceci peut non seulement saisir la source, mais également traiter JavaScript à travers l'événement Pageload. xxx

puis, gérez l'événement DocumentPompletd et: xxx

EDIT - Cela pourrait être le option de webkit open source meilleure: http://code.google.com/p/open- WebKit-Sharp /


2 commentaires

+1, aussi je pense que "besoin" est trop fort ici - Bookbrowser intégré ou même des fantomjs peut être utilisé pour faire de même.


La webkit me donne la source HTML et non la finale générée.



1
votes

Il suffit de mettre un WebBrowser code> Contrôle sur votre formulaire et que vous coulez du code: xxx pré>

édité fort> p>

pour Obtenir également le code HTML généré de manière dynamique par code de script Java que vous avez deux lignes: p>

  1. Exécutez le code fluide après WebBrowser1_documentCompletted code> Evénement LI> ol>
       var htmlcode = webBrowser1.Document.InvokeScript("javascriptcode");
    


5 commentaires

merci que c'est génial mais il renvoie la source non la source génératrice


Pour obtenir un code généré dynamiquement, vous devez utiliser un code JavaScript supplémentaire si vous si vous ajoutez plus de détails sur quelque chose que vous souhaitez faire, il affichera la solution (ou ajouter un code supplémentaire)


Hi - webbrowser.documenttext doit renvoyer le code HTML généré avec le JavaScript injecté. Pensez-vous que cela pourrait avoir besoin d'être fait comme ASYNC. Merci de votre aide.


@ Bonjour-world réponse édité


La chaîne renvoyée n'est que HTML avant la course JavaScript.



0
votes

Vous pouvez utiliser ce code: xxx


0 commentaires