您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

Python的pycurl包用法简介

2024/4/25 3:00:01发布3次查看
pycurl是功能强大的python的url包,是用c语言写的,速度很快,比urllib和httplib都快
调用方法:
import pycurlc = pycurl.curl()c.setopt(pycurl.url, 'http://api.minicloud.com.cn/statuses/public_timeline.xml')import stringio #这个用到里面的write函数b = stringio.stringio()c.setopt(pycurl.writefunction, b.write) #把stringio的写函数注册到pycurl的writefunction中,即pycurl所有获取的内容都写入到stringio中,如果没有这一句,pycurl就会把所有的内容在默认的输出器中输出c.perform()print b.getvalue()
这里有一个小例子,用来获取微博上流行的短地址对应的真实地址的
import stringioimport pycurlc = pycurl.curl()str = stringio.stringio()c.setopt(pycurl.url, http://t.cn/akln8t)c.setopt(pycurl.writefunction, str.write)c.setopt(pycurl.followlocation, 1)c.perform()print c.getinfo(pycurl.effective_url)
可见pycurl是十分强大和简洁的,只是要熟悉它的很多属性,下面来看一些常用的:
pycurl.curl() #创建一个pycurl对象的方法
pycurl.curl(pycurl.url, http://www.google.com.hk) #设置要访问的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/4.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
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录