zl程序教程

您现在的位置是:首页 >  其他

当前栏目

新浪微博 418 咖啡壶控制协议

2023-03-15 22:07:03 时间

抓微博话题的时候,在第27次请求后,http状态码从200变成了418.

我也是头一次见这个状态码。百度了一下,茶壶?

418 ( I’m a teapot):我是一个茶壶 这个代码是在1998年作为传统的IETF April Fools jokes被定义的在RFC2324,超文本咖啡罐控制协议,但是并没有被实际的HTTP服务器实现。RFC指定了这个代码应该是由茶罐返回给速溶咖啡。

意义是:当客户端给一个茶壶发送泡咖啡的请求时,茶壶就返回一个418错误状态码,表示“我是一个茶壶,不泡咖啡”。

讲道理在实际HTTP服务器中不会实现该状态码 ,所以原因就有些耐人寻味了。

于是我接着找了下:

超文本咖啡壶控制协议

超文本咖啡壶控制协议(英文:Hyper Text Coffee Pot Control Protocol,HTCPCP)是一种用于控制、监测和诊断咖啡壶的协议。

so: 如果我们试图让茶壶煮咖啡, 它可能返回503 Service Unavailable以表示暂时煮不了咖啡, 或者仍然返回418 I’m a teapot以表示这个茶壶对咖啡彻底无能为力。

如何避免?

我设置了下载延时,3秒可行。

 'DOWNLOAD_DELAY': 3,                 ## 下载延时

更新:经过测试,每次请求切换请求头,切换匿名代理(隧道转发)。可以解决这个问题。