百度返回代码的含义

凌霄13年前 (2011-10-08)科技

百度爬虫在进行抓取和处理时,是根据http协议规范来设置相应的逻辑的,所以请站长们也尽量参考http协议中关于返回码的含义的定义来进行设置。

百度spider对常用的http返回码的处理逻辑是这样的:

1、404

404返回码的含义是“NOT FOUND”,百度会认为网页已经失效,那么通常会从搜索结果中删除,并且短期内spider再次发现这条url也不会抓取

2、503

503返回码的含义是“Service Unavailable”,百度会认为该网页临时不可访问,通常网站临时关闭,带宽有限等会产生这种情况。对于网页返回503,百度spider不会把这条url直接删除,短期内会再访问。届时如果网页已恢复,则正常抓取;如果继续返回503,短期内还会反复访问几次。但是如果网页长期返回503,那么这个url仍会被百度认为是失效链接,从搜索结果中删除。

3、403

403返回码的含义是“Forbidden”,百度会认为网页当前禁止访问。对于这种情况,如果是新发现的url,百度spider暂不会抓取,短期内会再次检查;如果是百度已收录url,当前也不会直接删除,短期内同样会再访问。届时如果网页允许访问,则正常抓取;如果仍不允许访问,短期内还会反复访问几次。但是如果网页长期返回403,百度也会认为是失效链接,从搜索结果中删除。

4、301

301返回码的含义是“Moved Permanently”,百度会认为网页当前跳转至新url。当遇到站点迁移,域名更换、站点改版的情况时,推荐使用301返回码,尽量减少改版带来的流量损失。虽然百度spider现在对301跳转的响应周期较长,但我们还是推荐大家这么做。

我们的建议

1、如果站点临时关闭,当网页不能打开时,不要立即返回404,建议使用503状态。503可以告知百度spider该页面临时不可访问,请过段时间再重试。

2、如果百度spider对您的站点抓取压力过大,请尽量不要使用404,同样建议返回503。这样百度spider会过段时间再来尝试抓取这个链接,如果那个时间站点空闲,那它就会被成功抓取了。

3、有一些网站希望百度只收录部分内容,例如审核后的内容,累积一段时间的新用户页等等。在这种情况,建议新发内容暂时返回403,等审核或做好处理之后,再返回正常状态的返回码。

4、站点迁移,或域名更换时,请使用301返回码。

更多百度返回代码参考:

2xx 成功

200 正常:请求已完成。

201 正常:紧接 POST 命令。

202 正常:已接受用于处理,但处理尚未完成。

203 正常:部分信息:返回的信息只是一部分。

204 正常:无响应:已接收请求,但不存在要回送的信息。

3xx 重定向

301 已移动:请求的数据具有新的位置且更改是永久的。

302 已找到:请求的数据临时具有不同 URI。

303 请参阅其它:可在另一 URI 下找到对请求的响应,且应使用 GET 方法检索此响应。

304 未修改:未按预期修改文档。

305 使用代理:必须通过位置字段中提供的代理来访问请求的资源。

306 未使用:不再使用:保留此代码以便将来使用。

4xx 客户机中出现的错误

400 错误请求:请求中有语法问题,或不能满足请求。

401 未授权:未授权客户机访问数据。

402 需要付款:表示计费系统已有效。

403 禁止:即使有授权也不需要访问。

404 找不到:服务器找不到给定的资源:文档不存在。

407 代理认证请求:客户机首先必须使用代理认证自身。

410 请求的网页不存在(永久):

415 介质类型不受支持:服务器拒绝服务请求,因为不支持请求实体的格式。

5xx 服务器中出现的错误

500 内部错误:因为意外情况,服务器不能完成请求。

501 未执行:服务器不支持请求的工具。

502 错误网关:服务器接收到来自上游服务器的无效响应。

503 无法获得服务:由于临时过载或维护,服务器无法处理请求。

你可能想看:
标签: 代码百度