2012-03-30 8 views
0

処理されたWebページを文字列にロードしようとしていますが、javascriptもロードされているようです。私はこれを静的なHTMLファイルに保存してオフラインで実行できる "最終的な"結果にしたいと考えています。処理されたポストjavascript/ajax htmlを文字列にロードします。

これは、私はこの瞬間

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(textBox9.Text); 
IWebProxy theProxy = request.Proxy; 
if (theProxy != null) 
{ 
    theProxy.Credentials = CredentialCache.DefaultCredentials; 
} 
request.UseDefaultCredentials = true; 
request.Proxy = WebRequest.DefaultWebProxy; 

// execute the request 

HttpWebResponse response = (HttpWebResponse) 
    request.GetResponse(); 

// we will read data via the response stream 
Stream resStream = response.GetResponseStream(); 

で任意の提案を何をやっているのですか?

答えて

1

あなたの投稿を正しく理解していれば、ページからJavaScriptを取り除いておきたいのですが、ブラウザに通常通りページを訪問したかのように実行します。

これは、プロキシが克服するのは非常に難しい問題であり、他の人は様々なレベルで成功しています。ページに埋め込まれたJavascriptは正常に動作するはずですが、外部ファイルからページにロードされたJavaScriptを実行する際に問題が発生します。

ローカルのパスを反映するように外部のJavaScriptライブラリへのパスを書き直し、それらのjavascriptファイルのコピーをネットワーク経由で取得し、すべてを模倣したディレクトリ構造に保存することもできます。関与するjavascriptがどれほどファンシーかに基づいて、あなたの人数は変わるかもしれません。いくつかのAjax呼び出しは、あなたが何をしていても動作しないでしょう。

+0

これは正しいです。私はjavascriptが実行されている完成したHTMLを取得したい。 – Andrew

+1

[ここ](http://benalman.com/projects/php-simple-proxy/)は、この方法でjavascriptをサポートすると主張するPHPプロキシです。おそらく、ソースコードを見れば、問題に取り組むためのアイデアが得られるはずです – Cameron

関連する問題