python访问网站响应时间_使用Python获取DNS解析时间和响应时间

使用Python的PycURL库,可以获取到类似cURL命令提供的DNS解析时间、连接时间等性能指标。示例代码展示了如何获取TOTAL_TIME、CONNECT_TIME、PRETRANSFER_TIME和STARTTRANSFER_TIME,并列举了其他可用的性能指标标志。
摘要由CSDN通过智能技术生成

PycURL或任何其他python pakcage是否提供有关以下信息:

>查找

>连接时间

我想获得与此cURL命令相同的信息(无需使用子过程调用该命令):

命令

curl -s -w '\nLookup time:\t%{time_namelookup}\nConnect time:\t%{time_connect}\nPreXfer time:\t%{time_pretransfer}\nStartXfer time:\t%{time_starttransfer}\n\nTotal time:\t%{time_total}\n' -o /dev/null https://stackoverflow.com/

输出:

Lookup time: 0.029

Connect time: 0.144

PreXfer time: 0.144

StartXfer time: 0.263

Total time: 0.803

解决方法:

是的,PyCurl提供了信息.您可以使用pycurl导出信息.它可以提供很多细节,而不仅仅是您提到的细节.

这是一个示例代码,可用于导出相同的信息:

import pycurl

from io import BytesIO

buffer = BytesIO()

c = pycurl.Curl()

c.setopt(c.URL, 'https://stackoverflow.com/')

c.setopt(c.WRITEDATA, buffer)

c.perform()

body = buffer.getvalue()

print('TOTAL_TIME: %f' % c.getinfo(c.TOTAL_TIME))

print('CONNECT_TIME: %f' % c.getinfo(c.CONNECT_TIME))

print('PRETRANSFER_TIME: %f' % c.getinfo(c.PRETRANSFER_TIME))

print('STARTTRANSFER_TIME: %f' % c.getinfo(c.STARTTRANSFER_TIME))

c.close()

结果如下:

TOTAL_TIME: 2.252639

CONNECT_TIME: 0.331571

PRETRANSFER_TIME: 0.331634

STARTTRANSFER_TIME: 0.638206

我发现GitHub link提到了一些其他标志,这些标志也可以在您的代码中使用.

以下是用于快速查看的标志:

* EFFECTIVE_URL

* HTTP_CODE

* TOTAL_TIME

* NAMELOOKUP_TIME

* CONNECT_TIME

* PRETRANSFER_TIME

* REDIRECT_TIME

* REDIRECT_COUNT

* SIZE_UPLOAD

* SIZE_DOWNLOAD

* SPEED_UPLOAD

* HEADER_SIZE

* REQUEST_SIZE

* CONTENT_LENGTH_DOWNLOAD

* CONTENT_LENGTH_UPLOAD

* CONTENT_TYPE

* RESPONSE_CODE

* SPEED_DOWNLOAD

* SSL_VERIFYRESULT

* INFO_FILETIME

* STARTTRANSFER_TIME

* REDIRECT_TIME

* REDIRECT_COUNT

* HTTP_CONNECTCODE

* HTTPAUTH_AVAIL

* PROXYAUTH_AVAIL

* OS_ERRNO

* NUM_CONNECTS

* SSL_ENGINES

* INFO_COOKIELIST

* LASTSOCKET

* FTP_ENTRY_PATH

标签:pycurl,dns,curl,performance-testing,python

来源: https://codeday.me/bug/20191028/1950706.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值