为啥打开网页出现403forbidden的错误?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥打开网页出现403forbidden的错误?相关的知识,希望对你有一定的参考价值。
参考技术A 一、重置网络设置,重启手机即可。二、原因分析:
1、你的IP被列入黑名单;
2、你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了;
3、网站域名解析到了空间,但空间未绑定此域名
4、你的网页脚本文件在当前目录下没有执行权限
5、在不允许写/创建文件的目录中执行了创建/写文件操作
6、服务器繁忙,同一IP地址发送请求过多,遭到服务器智能屏蔽
三、什么是403 Forbidden
1、403 Forbidden 是HTTP协议中的一个状态码(Status Code)。可以简单的理解为没有权限访问此站。
2、该状态表示服务器理解了本次请求但是拒绝执行该任务,该请求不该重发给服务器。在HTTP请求的方法不是“HEAD”,并且服务器想让客户端知道为什么没有权限的情况下,服务器应该在返回的信息中描述拒绝的理由。在服务器不想提供任何反馈信息的情况下,服务器可以用404 Not Found代替403 Forbidden比如:choovin。
C#语言怎样解决从网页上下HTML代码error403 Forbidden的问题
我想从10000个网页上下载HTML代码,但是有的网页显示error 403 Forbidden,请问,怎样通过添加代码来解决这个问题????
我写的代码:
string url = "http://en.wiktionary.org/wiki/ce";
HttpWebRequest request;
HttpWebResponse response;
StreamReader sr = null;
string htmlCode = "";
try
request = (HttpWebRequest)WebRequest.Create(url);
response = (HttpWebResponse)request.GetResponse();
sr = new StreamReader(response.GetResponseStream());
htmlCode = sr.ReadToEnd();
if (htmlCode == "")
Console.Write("cannot get HTMLCode.\n");
else
Console.Write("get HTMLCode, code length = " + htmlCode.Length + "\n");
Console.Write(htmlCode);
response.Close();
catch (Exception e) Console.Write(e.Message);
我想中间应该加几句设定浏览器的语句就可以了,高分帮忙。
改好后实下这几个连接:
http://en.wiktionary.org/wiki/ce
http://en.wiktionary.org/wiki/ne
http://en.wiktionary.org/wiki/sont
HttpWebResponse.StatusCode
403错误:HttpStatusCode.Forbidden 参考技术C public virtual int GetResponseCode(WebException exception)
if (exception.Status == WebExceptionStatus.ProtocolError && exception.Response != null &&
exception.Response is HttpWebResponse)
return (int)(((HttpWebResponse)exception.Response).StatusCode);
return 500;
用try catch 捕获WebException 然后判段
参考资料:初入江湖 多多指教啊
参考技术D //下载网页if(this.textBox1.Text==""|this.textBox2.Text=="")
return;
string FileName=this.textBox2.Text.Trim();
string URL=this.textBox1.Text.Trim();
//加"http://"标志
if (URL.IndexOf(@"http://")==-1 )
URL=@"http://"+URL;
HttpWebRequest MyRequest = (HttpWebRequest)WebRequest.Create(URL);
//发送请求,获取响应
HttpWebResponse MyResponse = (HttpWebResponse)MyRequest.GetResponse();
Stream MyInStream = null;
FileStream MyFileStream = null;
try
MyInStream =MyResponse.GetResponseStream();
long fileSizeInBytes = MyResponse.ContentLength;
//创建文件流对象
MyFileStream = new FileStream(FileName, FileMode.OpenOrCreate, FileAccess.Write);
int length = 1024;
byte[] buffer = new byte[1025];
int bytesread = 0;
string strtemp="";
//从网络读取数据
while((bytesread = MyInStream.Read(buffer, 0, length)) > 0)
//把数据写入文件
MyFileStream.Write(buffer, 0, bytesread);
strtemp+=System.Text.Encoding.Default.GetString(buffer,0,bytesread);
MessageBox.Show("下载网页成功!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
catch(Exception Err)
MessageBox.Show("下载网页操作失败!错误是:"+Err.Message,"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
finally
//关闭流
if(MyInStream != null)
MyInStream.Close();
if(MyFileStream != null)
MyFileStream.Close();
自己改了,该睡觉了,夜猫非我莫属也~!!
以上是关于为啥打开网页出现403forbidden的错误?的主要内容,如果未能解决你的问题,请参考以下文章
C#语言怎样解决从网页上下HTML代码error403 Forbidden的问题