pycurl(http://pycurl.sourceforge.net)是一个用C 语言写的libcurl Python 实现,功能非常

强大,支持的操作协议有FTP、HTTP、HTTPS、TELNET 等,可以理解成Linux 下curl 命

令功能的Python 封装,简单易用。本节通过调用pycurl 提供的方法,实现探测Web 服务质

量的情况,比如响应的HTTP 状态码、请求延时、HTTP 头信息、下载速度等,利用这些信

息可以定位服务响应慢的具体环节,下面详细进行说明。

源码安装方法

要求curl-config 包支持,需要源码方式重新安装curl

1
2
3
4
5
6
7
8
9
10
11
12
# wget http://curl.haxx.se/download/curl-7.36.0.tar.gz
# tar -zxvf curl-7.36.0.tar.gz
# cd curl-7.36.0
# ./configure
# make && make install
# export LD_LIBRARY_PATH=/usr/local/lib
 
# wget https://pypi.python.org/packages/source/p/pycurl/pycurl-7.19.3.1.tar.gz
--no-check-certificate
# tar -zxvf pycurl-7.19.3.1.tar.gz
# cd pycurl-7.19.3.1
# python setup.py install --curl-config=/usr/local/bin/curl-config

校验安装结果如下:

1
2
3
>>>  import  pycurl
>>> pycurl.version
'PycURL/7.19.3.1 libcurl/7.36.0 OpenSSL/1.0.1e zlib/1.2.3'

注意:以上是在同一个终端下执行,如果在不同终端下运行要执行,可能会报错:

1
2
3
4
5
6
7
8
>>>  import  pycurl
Traceback (most recent call last):
   File  "<stdin>" , line 1,  in  <module>
ImportError: pycurl: libcurl link- time  version (7.19.7) is older than compile- time  version (7.36.0)
 
执行以下,即可
 
# export LD_LIBRARY_PATH=/usr/local/lib