J'ai le code suivant qui envoie un HttpWebRequest à Bing. Lorsque je demande l'URL ci-dessous, elle renvoie ce qui semble être une réponse vide alors qu'elle devrait renvoyer une liste de résultats.HttpWebRequest a une réponse vide demandant une recherche à partir de Bing
var response = string.Empty;
var httpWebRequest = WebRequest.Create("http://www.bing.com/search?q=stackoverflow&count=100") as HttpWebRequest;
httpWebRequest.Method = WebRequestMethods.Http.Get;
httpWebRequest.Headers.Add("Accept-Language", "en-US");
httpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Win32)";
httpWebRequest.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
using (var httpWebResponse = httpWebRequest.GetResponse() as HttpWebResponse)
{
Stream stream = null;
using (stream = httpWebResponse.GetResponseStream())
{
if (httpWebResponse.ContentEncoding.ToLower().Contains("gzip"))
stream = new GZipStream(stream, CompressionMode.Decompress);
else if (httpWebResponse.ContentEncoding.ToLower().Contains("deflate"))
stream = new DeflateStream(stream, CompressionMode.Decompress);
var streamReader = new StreamReader(stream, Encoding.UTF8);
response = streamReader.ReadToEnd();
}
}
Son joli code standard pour demander et recevoir une page Web. Des idées pour lesquelles la réponse est vide? Merci d'avance.
EDIT J'ai omis un paramètre de chaîne de requête dans l'URL. J'ai également eu & compte = 100 que j'ai maintenant corrigé. Il semble fonctionner pour des valeurs de 50 et moins mais ne renvoie rien quand il est plus grand. Cela fonctionne bien dans le navigateur, mais pas pour cette requête web. Il me semble que le problème est que la réponse est grande et HttpWebResponse ne gère pas cela pour moi comme je l'ai configuré. Juste une supposition cependant.
Merci Janvier Je peux rechercher Bing en utilisant un navigateur, donc je ne suis pas banni. –
Avec & count = 100, aucun résultat ne s'affiche dans mon navigateur ni dans l'application. Donc, il y a la capture. Essayez cette bibliothèque: http://thibautvs.com/blog/?p=643 –