pycurl是功能强大的python的url库,是用c语言写的,速度很快,比urllib和httplib都快。

今天我们来看一下pycurl的用法及参数详解

常用方法:

pycurl.Curl() #创建一个pycurl对象的方法

pycurl.Curl().setopt(pycurl.URL, http://www.***.com) #设置要访问的URL

pycurl.Curl().setopt(pycurl.MAXREDIRS, 5) #设置最大重定向次数

pycurl.Curl().setopt(pycurl.CONNECTTIMEOUT, 60)

pycurl.Curl().setopt(pycurl.TIMEOUT, 300) #连接超时设置

pycurl.Curl().setopt(pycurl.USERAGENT, "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)") #模拟浏览器

pycurl.Curl().perform() #服务器端返回的信息

pycurl.Curl().getinfo(pycurl.HTTP_CODE) #查看HTTP的状态 类似urllib中status属性

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

实例:

import StringIO
import pycurl c = pycurl.Curl()
str = StringIO.StringIO()
c.setopt(pycurl.URL, "http://www.***.com")
c.setopt(pycurl.WRITEFUNCTION, str.write)
c.setopt(pycurl.FOLLOWLOCATION, 1) c.perform()
print c.getinfo(pycurl.EFFECTIVE_URL)

  

 
 

最新文章

  1. Docker与CI持续集成/CD
  2. 通过Dockerfile建立.NET Core mvc Image
  3. Jmeter 检查点
  4. Linux下后台程序完成自动输入密码等交互行为的例子
  5. JMeter性能测试介绍学习一
  6. http协议分析工具
  7. javascript启示录英文单词生词
  8. PHP 性能追踪及分析工具(XHPROF)
  9. 【附答案】Java 大数据方向面试题,你会几个?
  10. axios跨域
  11. SpringBatch前言
  12. python之旅六【第七篇】面向对象
  13. 写个shell脚本依次运行每个程序半小时
  14. Shiro的认证授权
  15. AnswerOpenCV(0826-0901)一周佳作欣赏
  16. js 求select option 的值和对应option的内容
  17. 浅谈Session与Cookie的区别与联系
  18. Redux入门学习
  19. 使用rz,sz需要安装lrzsz
  20. Spring的bean创建详解

热门文章

  1. bootstrap之常见组件应用1
  2. vue单文件组件互相通讯
  3. Databus架构分析与初步实践
  4. pat 团体天梯赛 L2-007. 家庭房产
  5. 《Java性能权威指南》笔记----JIT编译器
  6. mysql-count与sum
  7. linux 常用命令: basename 去掉路径和扩展名
  8. LeetCode OJ--Combination Sum **
  9. UVA 10976 Fractions Again?!【暴力枚举/注意推导下/分子分母分开保存】
  10. Codeforces Round #467 (Div. 2) B. Vile Grasshoppers[求去掉2-y中所有2-p的数的倍数后剩下的最大值]