requests 超时设置

超时(timeout) 为防止服务器不能及时响应,大部分发至外部服务器的请求都应该带着 timeout 参数。在默认情况下,除非显式指定了 timeout 值,requests 是不会自动进行超时处理的。如果没有 timeout,你的代码可能会挂起若干分钟甚至更长时间。 连接超时指的是在你的客户端实现到远端机器端口的连接时(对应的是connect()_),Request 会等待的秒数。一个很好的实践方法是把连接超时设为比 3 的倍数略大的一个数值,因为 TCP 数据包重传窗口 (TCP packet retransmission window) 的默认大小是 3。 一旦你的客户端连接到了服务器并且发送了 HTTP 请求,读取超时指的就是客户端等待服务器发送请求的时间。(特定地,它指的是客户端要等待服务器发送字节之间的时间。在 99.9% 的情况下这指的是服务器发送第一个字节之前的时间)。 如果你制订了一个单一的值作为 timeout,如下所示: r = requests.get(‘https://github.com’, timeout=5) 这一 timeout 值将会用作 connect 和 read 二者的 timeout。如果要分别制定,就传入一个元组: r

Read More requests 超时设置

NMAP输出结果中CPE的含义

CPE全称是Common Platform Enumeration,意思是通用平台枚举项。它是NMAP对识别出来的软件、操作系统和硬件的一种命名方式。它的格式如下: cpe:/:::::: 其中,part表示目标类型,允许的值有a(应用程序)、h(硬件平台)、o(操作系统);vendor表示向量类型;product表示产品名称;version表示版本号;update表示更新包;edition表示版本;language表示语言项。 这七项不一定每次都出现。例如,在cpe:/o:freebsd:freebsd:3.5.1中,part为o,表示操作系统类型;vendor为freebsd,表示向量类型为freebsd;product为freebsd,表示产品为FreeBSD;version为3.5.1,表示FreeBSD的版本号。