stream:'dataStream.Length'抛出了一个'System.NotSupportedException'类型的异常 Position ='dataStream.Position'抛出了一个'System.NotSupportedException'类型的异常
public static Stream DownloadFile(string Url)
{
//网页请求
HttpWebRequest Myrq = (HttpWebRequest)WebRequest.Create(Url);//进行强制转换
//连续性连接
Myrq.KeepAlive = false;
//超时值
Myrq.Timeout = 30 * 1000;//30秒
//请求方法
Myrq.Method = "GET";
Myrq.ContentType = "text/html; charset=UTF-8";
//Accept的值
Myrq.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9";
//对有反爬的网页很关键
//Myrq.Host = "image.baidu.com";
//Myrq.Referer = "https://image.baidu.com/";
//类似于ID
Myrq.UserAgent = GetUA();
//服务器回应
HttpWebResponse Myrp = (HttpWebResponse)Myrq.GetResponse();//进行强制转换
//是否相应成功
if (Myrp.StatusCode != HttpStatusCode.OK)
{
return null;
}
return Myrp.GetResponseStream();
}
private string DownloadsURL(string url, string pages)
{
int pagess = int.Parse(pages);
string Html = null;
for (int i = 0; i < pagess; i++)
{
Stream stream = null;
string Durl = url.Replace("[REPLACE]", (50 * i).ToString());
try
{
stream = Downloas.DownloadFile(Durl);
}
catch
{
continue;
}
try
{
using (StreamReader sr = new StreamReader(stream))
{
Html = sr.ReadToEnd();
}
}
catch
{
continue;
}
}
return Html;
}
public string Downloadworld(string keyname, string zMax, string ICColor, string page)
{
//Stream stream = Downloas.DownloadFile(GetURL(keyname, zMax, ICColor));
//using (StreamReader sr = new StreamReader(stream))
//{
// return sr.ReadToEnd();
//}
return DownloadsURL(GetURL(keyname, zMax, ICColor), page);
//return GetURL(keyname, zMax, ICColor);
}
//生成地址
private string GetURL(string keyname, string zMax, string ICColor)
{
//关键字
string queryWord, word;
queryWord = UrlBianMa.UrlEncode(keyname);
word = UrlBianMa.UrlEncode(keyname);
//大小
string z;
z = zMax;
//颜色
string ic;
ic = ICColor;
string url = string.Format("https://image.baidu.com/search/acjson?tn=resultjson_com&logid=11225711020569559063&ipn=rj&ct=201326592&is=&fp=result&queryWord={0}&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z={1}&ic={2}&hd=&latest=©right=&word={3}&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&pn=[REPLACE]&rn=50", queryWord, z, ic, word);
return url;
}