2

次を使用してC#でWebページをダウンロードしようとしています:

var responseData = "";
var strUrl = this.QuerySelector(item, "a[class='url']").Attributes["href"].Value;

request = (HttpWebRequest)WebRequest.Create(strUrl);
request.Method = "GET";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = 0;
request.CookieContainer = cookies;
request.Timeout = System.Threading.Timeout.Infinite;
request.UserAgent = this.RefreshUserAgent();
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
request.Headers.Add("Accept-Encoding", "gzip,deflate,sdch");
request.KeepAlive = true;
request.AllowAutoRedirect = false;
request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;

response = (HttpWebResponse)request.GetResponse();
response.Cookies = request.CookieContainer.GetCookies(request.RequestUri);
var encoding = new System.Text.UTF8Encoding();
var responseReader = new StreamReader(response.GetResponseStream(), encoding, true);

responseData = responseReader.ReadToEnd();
response.Close();
responseReader.Close();

しかし、サイトは同じコードを表示し続けます。JavaScript を有効にして続行してください。私はすでに Fiddler でデータをチェックしています - それ自体に再びナビゲートするだけですが、このメッセージを乗り越えることができません:

Before you can move on - please enable JavaScript.

サイトは Manta.com で、これは私のサンプル ページです。何か案は..

http://www.manta.com/c/mrsywyl/leeds-automotive

4

2 に答える 2

3

正解です。HttpWebRequestHTTP リクエストを行うだけです。JavaScript はサポートされていません。その動作が必要な場合は、WebBrowserコントロールまたは Awesomium などを使用してみてください。

于 2013-02-24T15:39:57.287 に答える