0

これは、url から html コードを要求するためのコードです。

var currentUrl = "https://www.google.com";
HttpClient client = new HttpClient();
System.Diagnostics.Process.Start(currentUrl); //here i open a browser with same URL, 
var response = await client.GetAsync(currentUrl);
string sourse = null;


if (response != null && response.StatusCode == HttpStatusCode.OK)
{
     sourse =await response.Content.ReadAsStringAsync(); // here i get the html-code
}

SO、質問は次のとおりです。プログラムから取得したhtmlコードと、数秒前に開いたブラウザの実際のページからのhtmlコードが異なるのはなぜですか? 意味がありません。

また、ここにいくつかの証拠があります。最初の画像 - browser-html コードの文字数 ここに画像の説明を入力

...そしてprogram-htmlコードでここに画像の説明を入力

質問をより簡単にするために、私は最も単純な証拠を示しました。しかし、さらに掘り下げてみると、html コードはどこからともなく出てきます。特定のページを解析すると、それは 39 個の製品であるはずですが、プログラムは 6 個の製品のみを返す html コードを返します (ちなみに、ブラウザのページに実際にある 39 個の製品には含まれていません)。だから私はとても簡単に質問しました。本当に、私はこのコードで 1 分前に新しいプロジェクトを作成しましたが、上で書いたように正しく動作しません。プログラムが返すコードを取得するには、sourse 変数で検索するか、ファイルに残してから比較します。お気に入り:

        FileStream fs = new FileStream("report.txt", FileMode.OpenOrCreate);
        StreamWriter SW = new StreamWriter(fs);
        SW.WriteLine(sourse);
4

0 に答える 0