首页 > [Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …...

[Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …...

[Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …

[Python学习]PycURL简单学习

 


 

PycURL 是一个C语言写的 libcurl 的 Python 绑定库。libcurl 是一个自由的,并且容易使用的用在客户端的 URL 传输库。它的功能很强大,在 PycURL  的主页上介绍的支持的功能有:

supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP. libcurl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, kerberos, HTTP form based upload, proxies, cookies, user+password authentication, file transfer resume, http proxy tunneling and more!

那一大堆的协议已经让人惊喜了,特别是还有代理服务器和用户认证之类的功能。这个库相对于 urllib2 来说,它不是纯 Python 的,它是一个 C 库,但因此速度更快,但它不是很 pythonic ,学起来有些复杂。它在多种平台下都有移植,象 Linux , Mac, Windows, 和多种Unix。

我安装了一个,并且测试了一小段代码,是有些复杂,代码如下:

        import pycurl

        c = pycurl.Curl()

        c.setopt(pycurl.URL, ‘http://feeds.feedburner.com/solidot’)

        import StringIO

        b = StringIO.StringIO()

        c.setopt(pycurl.WRITEFUNCTION, b.write)

        c.setopt(pycurl.FOLLOWLOCATION, 1)

        c.setopt(pycurl.MAXREDIRS, 5)

#        c.setopt(pycurl.PROXY, ‘http://11.11.11.11:8080′)

#        c.setopt(pycurl.PROXYUSERPWD, ‘aaa:aaa’)

        c.perform()

        print b.getvalue()

上述代码将会把奇客(Solidot)的RSS抓下来。如果有代理服务器,那么修改一下注释的两行即可。在 PycURL 的主页上还有一个多线程抓取的例子,有兴趣的可以看一看。

更多相关:

  • 残差残差在数理统计中是指实际观察值与估计值(拟合值)之间的差。在集成学习中可以通过基模型拟合残差,使得集成的模型变得更精确;在深度学习中也有人利用layer去拟合残差将深度神经网络的性能提高变强。这里笔者选了Gradient Boosting和Resnet两个算法试图让大家更感性的认识到拟合残差的作用机理。Gradient Boost...

  • MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:45节课(16h 55m) |大小解压后:10.8 GB 一级和二级初级和中级 你会学到: 通过一个手把手的项目学习使用Rhino V7。 您将学习使用Rhino的最新工具集,主...

  • 初学者用Python完成机器学习课程 你会学到: Python上的主机器学习 进行有力的分析 做出准确的预测 制作健壮的机器学习模型 将机器学习用于个人目的 建立一支强大的机器学习模型大军,并知道如何将它们结合起来解决任何问题 使用K-均值聚类、支持向量机(SVM)、KNN、决策树、朴素贝叶斯和主成分分析对数据进行分类 清理您的...

  • 这门由行业和学术领袖开设的课程是为那些希望在数据科学领域建立有价值的职业生涯的人开设的 你会学到: 监督学习和非监督学习的原理及其区别。 线性和逻辑回归,决策树,回归树,随机森林,判别分析,支持向量机,朴素贝叶斯分类器,KNN 如何在Python中选择合适的算法集并应用到现实项目中。 使用Python编程语言解决许多现实生活中的...

  • 学习每个机器学习模型背后的数学,然后用Python实现它 你会学到: 开发机器学习模型 创建机器学习模型的模板 学习每个机器学习模型背后的数学 要求: Python或任何编程语言的基础 时长:8h 15m |视频:. MP4,1280×720 30 fps |音频:AAC,44.1 kHz,2ch |大小解压后:4.54...

  • 出品 | FlyAI编译 | 林椿眄编辑 | DonnaPython 已经成为机器学习及其他科学领域中的主流语言。它不但与多种深度学习框架兼容,而且还包含优秀的工具包和依赖库,方便我们对数据进行预处理和可视化操作。据最新消息,到2019 年底,Numpy 等很多科学计算工具包都将停止支持Python 2版本,而 2018 年后 Num...

  • 转载: 简单回答题主的问题,如果编程零基础,建议以python入门,但是并不建议以此作为数据分析的全部。R可以说是必须要学的,除此两者以外的,可以泛泛的关注。 =================================分割线================================= 下面详细说一下自己的看法,仅仅是个人...

  • 随着人工智能时代的来临,Python开始崭露头角并迅速吸引了人们的广泛关注。很多人想要从事Python开发,但零基础入门Python,需要了解什么呢?看看你都掌握了吗? 1.Python是如何被解释执行的? Python是一种解释型语言,它可以直接从源代码运行程序。程序员编写的源代码首先转变成一种中间语言代码,然后再被转换成能够直接执...

  • 该文章为转载内容,请关注文章作者博客https://blog.csdn.net/io569417668 Open3D是一个开源库,支持快速开发和处理3D数据。Open3D在c++和Python中公开了一组精心选择的数据结构和算法。后端是高度优化的,并且是为并行化而设置的。 本系列学习计划有Blue同学作为发起人,主要以Open3D官...

  • 在python中利用urllib2或是pycurl都可以实现http POST请求功能,下面是源码: #!/usr/bin/env python #encoding: utf-8 #description: demo a simple post form #date: 2015-12-14import urllib, urllib...