当前位置 : 主页 > 编程语言 > python >

Pycurl获取http响应过程时间

来源:互联网 收集:自由互联 发布时间:2022-06-15
安装 pip install pycurl 示例代码 import pycurl class Test : def __init__ ( self ): self . contents = '' def body_callback ( self , buf ): self . contents = self . contents + buf def gzip ( url ): t = Test () c = pycurl . Curl () # c.s

安装

pip install pycurl

示例代码

import pycurl

class Test:
def __init__(self):
self.contents = ''

def body_callback(self, buf):
self.contents = self.contents + buf

def gzip(url):
t = Test()
c = pycurl.Curl()
# c.setopt(pycurl.WRITEFUNCTION, t.body_callback)
# c.setopt(pycurl.ENCODING,'gzip')
c.setopt(pycurl.URL, url)
c.perform()

print('状态码', c.getinfo(pycurl.HTTP_CODE))
print('域名解析时间', c.getinfo(pycurl.NAMELOOKUP_TIME))
print('远程服务器连接时间', c.getinfo(pycurl.CONNECT_TIME))
print('连接上后到开始传输时的时间', c.getinfo(pycurl.PRETRANSFER_TIME))
print('接收到第一个字节的时间', c.getinfo(pycurl.STARTTRANSFER_TIME))
print('上一请求总的时间', c.getinfo(pycurl.TOTAL_TIME))
print('如果存在转向的话,花费的时间', c.getinfo(pycurl.REDIRECT_TIME))
if __name__ == '__main__':
gzip('https://github.com/hanzhichao')

pycurl 的一些响应信息


<参考: ​​http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html​​>


  • pycurl.NAMELOOKUP_TIME 域名解析时间
  • pycurl.CONNECT_TIME 远程服务器连接时间
  • pycurl.PRETRANSFER_TIME 连接上后到开始传输时的时间
  • pycurl.STARTTRANSFER_TIME 接收到第一个字节的时间
  • pycurl.TOTAL_TIME 上一请求总的时间
  • pycurl.REDIRECT_TIME 如果存在转向的话,花费的时间
  • pycurl.EFFECTIVE_URL
  • pycurl.HTTP_CODE HTTP 响应代码
  • pycurl.REDIRECT_COUNT 重定向的次数
  • pycurl.SIZE_UPLOAD 上传的数据大小
  • pycurl.SIZE_DOWNLOAD 下载的数据大小
  • pycurl.SPEED_UPLOAD 上传速度
  • pycurl.HEADER_SIZE 头部大小
  • pycurl.REQUEST_SIZE 请求大小
  • pycurl.CONTENT_LENGTH_DOWNLOAD 下载内容长度
  • pycurl.CONTENT_LENGTH_UPLOAD 上传内容长度
  • pycurl.CONTENT_TYPE 内容的类型
  • pycurl.RESPONSE_CODE 响应代码
  • pycurl.SPEED_DOWNLOAD 下载速度
  • pycurl.SSL_VERIFYRESULT
  • pycurl.INFO_FILETIME 文件的时间信息
  • pycurl.HTTP_CONNECTCODE HTTP 连接代码
  • pycurl.HTTPAUTH_AVAIL
  • pycurl.PROXYAUTH_AVAIL
  • pycurl.OS_ERRNO
  • pycurl.NUM_CONNECTS
  • pycurl.SSL_ENGINES
  • pycurl.INFO_COOKIELIST
  • pycurl.LASTSOCKET
  • pycurl.FTP_ENTRY_PATH

网友评论