1

WatiNを介してIEコメントと一緒にページソースを取得する方法はありますか?WatiNはDocumentElement.outerHTMLを公開していますが、コメントのないドキュメントが含まれています。

編集IEのソースの表示を介してIEのコメントを見ると、次のようになります。

<!--[if IE]>
<p>Welcome to Internet Explorer.</p>
<![endif]-->

しかし、ドキュメントオブジェクトを介して実際にレンダリングされたHTMLを見ると、次のことがわかります。

<p>Welcome to Internet Explorer.</p>

つまり、IEコメントはレンダリングされたドキュメントに含まれていませんが、通常のHTMLコメントは含まれています。

4

1 に答える 1

1

これをコードの先頭に追加します。

using SHDocVw;

これを使用して実際のHTMLコンテンツを取得します

InternetExplorer internetExplorer = (InternetExplorer)browser.InternetExplorer;
string htmlContent = internetExplorer.Document.documentElement.OuterHTML;

幸運を。

編集: 私はあなたが欲しいものを誤解したようです。あなたがあなたの投稿を編集した後、私は何かを試みました。を含むOperaとChromeでウェブサイトを開き、<!--[if IE]-->コンソールで次のコマンドを実行しましたdocument.head.innerHTML。どちらのブラウザもで出力を出しましたが[if IE]、IEで試してみると、ページがレンダリングされた後、IEはこれらすべてを削除しているようです。

これを達成するための何らかの方法があるはずですが、ページ全体をダウンロードするSystem.Netか、何か他のものをダウンロードしてからそのコンテンツを読むことなしに解決策を見つけることができませんでした。

編集2: 別の方法を見つけましたが、解決策が気に入ったかどうかはわかりません。このコードを見てください:http://pastebin.com/4EvLSuEL

ajax呼び出しを行ってページのコンテンツをロードし、結果を非表示に貼り付けますtextarea。その後、WatiNを使用して、ElementWithTagそのtextarea値を文字列に取り込みますmyContent

それがあなたを助けることを願っています、これは私が最善を尽くすことができることです。

于 2012-09-10T17:47:34.300 に答える