2017-12-27 22 views
0

URLを使用してウェブページのHTMLコードを取得しようとしています。私は次のコードを書いて、それは動作しますが、結果の文字列を比較すると、私はGoogle Chromeの検査を使用するときに表示されるコードと一致しません。私はHTMLグルーではありませんが、それは異なっているようです。ウェブページのHTMLコードを取得する

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://fantasy.premierleague.com/a/leagues/standings/517292/classic"); 

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

StreamReader stream = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(response.CharacterSet)); 

string PageScript = stream.ReadToEnd(); 

次のように結果のスクリプトは次のとおりです。https://ideone.com/DXzfKy

私は誰かが私に何を私は見ていますし、どのような可能性がありますを伝えることができた場合は、セキュリティプロトコル

ServicePointManager.Expect100Continue = true; 
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 

を設定するために、これらの2つの行を使用しています間違っている、私は感謝します。

+2

「それは異なるようです。」どのように? –

+0

あなたがしたいことのひとつは、Streamを 'using'ブロックなどに配置することです。しかし、ブロックの外に 'PageScript'を宣言しなければなりません。 –

+0

@DStanley私はthoを説明する方法を知らないが、検査コードで見ることができる特定のブロックを探しているが、出力文字列で終了しない。私は出力文字列のリンクを提供しています。もしあなたが親切にURLを使ってコードを検査し、あなた自身のために見ることができるならば。 –

答えて

0

WebClientのインスタンスを作成し、これを使用してURIからデータを読み取り、StreamReaderに変換してから最終的にプレーンテキスト形式に変換するだけです。

WebClient client = new WebClient(); 
Stream dataFromPage = client.OpenRead(new Uri("https://ideone.com/DXzfKy")); 
StreamReader reader = new StreamReader(dataFromPage); 
string htmlContent = reader.ReadToEnd(); 
関連する問題