2017-11-11 8 views
0

WebClientを使用してWebページを読み取ろうとしていますが、これは成功しません。私はウェブページから上記のエラー応答を受け取ります。私はこの問題の具体的なことについてたくさんの検索を試みましたが、関連する回答を見つけることができませんでした。私もプロキシを使用しようとしましたが、それはServiceAccessManagerの他の問題がhttpsプロキシを使用することができません...あなたが助けることができれば感謝します!WebClientに「ブラウザの更新」と表示されます

<!DOCTYPE html> 
<html> 
    <head> 

     <title>Update your browser</title> 

     <!-- Bootstrap CDN --> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 

     <style> 
      ... 
     </style> 

    </head> 
    <body> 

     <header> 
      ... 
     </header> 

     <main> 
      <div class="container"> 
       <div class="row"> 
        <div class="col-md-12"> 
         <h1>Update your browser</h1> 
         <h3>Unfortunately, we don't support your browser</h3> 
         <p>For your security, we only support browsers using the latest encryption technology.</p> 
        </div> 
       </div> 
      </div> 
     </main> 

    </body> 
</html> 

     Uri siteUri = new Uri(url); 
     using (var client = new WebClient()) 
     { 
      client.Headers["User-Agent"] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36";    
      try 
      { 
       using (var stream = client.OpenRead(siteUri)) 
       { 
        string Data = client.DownloadString(siteUri);       
       } 
      } 
      catch (WebException ex) 
      { 
       using (var sr = new StreamReader(ex.Response.GetResponseStream())) 
        html = sr.ReadToEnd(); 

       return false; 

      } 

答えて

0

ページまたはサーバーが、ユーザーが使用しているブラウザの種類を検出しようとしています。この場合、WebClientはその基準を満たしていません。たぶんそれはいくつかのJSを実行しようとしている?または、User-Agentヘッダーを探していますか?いずれにせよ、あなたは法案に合わないので、サイトはそのメッセージを与えています。これには良い決定的な答えはありません - サイトは何ですか?彼らに尋ねることはできますか?

+0

私には聞こえるが、十分ではない。 OPにこれを示すサイトを提供できますか? – kenny

+0

ここにウェブサイトがあります:https://www.tkmaxx.com/ – Kafiz

関連する問題