我们在使用爬虫的过程中会遇到很多问题,会返回一些状态码给我们,那么这些状态码是什么意思呢?如果我们能正确理解这些状态码的含义,就能对症下药,解决问题,成功获取数据。以下小系列将向您介绍爬虫遇到这些状态代码意味着什么:
500:服务器内部错误,服务器遇到意外情况,导致它无法完成请求的处理。一般来说,当服务器端的源代码错误时,就会出现这个问题。
51:服务器不识别它,它不支持当前请求所需的功能。当服务器无法识别所请求的方法并且无法支持其对任何资源的请求时。
502:错误网关,当作为网关或代理工作的服务器尝试执行请求时,它从上游服务器收到无效响应。
503:服务错误,由于临时服务器维护或过载,服务器当前无法处理请求。这种情况是暂时的,一段时间后会恢复。
400:非法请求,处理方法:丢弃。
41:未经授权,处理方式:丢弃。
403:禁止,处理方式:丢弃。
404:未找到,处理方法:丢弃。
300:HTTP/1.0应用程序不直接使用此状态代码,而仅用作3XX类型响应的默认解释。有多个请求的资源可用。处理方式:如果能在程序中处理,则进一步处理;如果它不能在程序中处理,它将被丢弃。
31:请求的资源将被分配一个永久的网址,以便将来可以通过该网址访问。处理方法:重定向到指定的网址。
32:请求的资源暂时保存在不同的网址。处理方法:重定向到临时网址。
304:请求的资源没有更新。处理方式:丢弃。
200:请求成功。处理方法:获取响应的内容并进行处理。
201:请求已完成,因此创建了一个新资源。新创建的资源的URI在响应实体中可用。处理方法:爬行动物不会遇到。
202:请求被接受,但处理尚未完成。处理方法:阻塞等待。
204:服务器已经完成了请求,但是没有返回新的信息。如果客户是用户代理,则无需为此目的更新自己的文档视图。处理方法:丢弃。
100:继续,客户端应该继续发送请求。客户端应该继续发送请求的剩余部分,如果请求已经完成,则忽略响应。
101:协议转换。在发送此响应的最后一个空行后,服务器将切换到升级头中定义的那些协议。只有当切换到新协议更有利时,才应该采取类似的措施。
102:继续处理。WebDAV扩展的状态代码(RFC 2518)表示处理将继续。
通过以上研究,我们都知道爬虫遇到这些状态码意味着什么。只要我们解决了这些问题,爬虫就能完成它们的任务。不同的网站有不同的反爬虫机制,所以爬虫遇到的状态码也是不同的,比如IP限制,可以用IP模拟器表示大量的IP地址来破解。