爬虫相关22 个python库

1. Urllib3

8.93亿次下载

Urllib3 是 Python 的 HTTP 客户端,它提供了许多 Python 标准库没有的功能。

  • 线程安全

  • 连接池

  • 客户端 SSL/TLS 验证

  • 使用 multipart 编码进行文件上传

  • 用于重传请求并处理 HTTP 重定向的辅助功能

  • 支持 gzip 和 deflate 编码

  • 支持 HTTP 和 SOCKS 代理

尽管名字叫做 Urllib3,但它并不是 Python 自带的 urllib2 的后继版本。如果你想尽可能使用 Python 的核心功能(比如由于某些限制导致不能安装),那么可以看看 urllib.request。

对于最终用户,我强烈推荐 requests 包(参考列表中的第六项)。Urllib3 之所以排名第一是因为几乎 1200 个软件包都依赖它,许多这些软件包也都在列表中名列前茅。

2. Six

7.32亿次下载

Six 是 Python 2 和 Python 3 兼容性工具。该项目的目的是让代码能够同时在 Python 2 和  Python 3 上运行。

它提供了许多函数,掩盖了 Python 2 和  Python 3 之间的语法差异。最容易理解的例子就是six.print_()。在 Python 3 中,输出时需要使用 print() 函数,而 Python 2 中是使用不带括号的 print。因此,使用 six.print_() 可以同时支持两种语言。 

重点:

  • 包的名字 six 来自于2 x 3 = 6

  • 类似的库还有 future

  • 如果想将代码转换成 Python 3(同时不再支持 Python 2),可以看看 2to3

尽管我理解该包如此流行,但还是希望人们尽快抛弃 Python 2,特别是从2020年1月1日起官方已经不再支持 Python 2了。

3. botocore, boto3, s3transfer, awscli

这几个项目放在一起说:

  • botocore:第3名,6.6亿次下载

  • s3transfer:第7名,5.84亿次下载

  • awscli:第17名,3.94亿次下载

  • boto3:第22名,3.29亿次下载

Botocore 是 AWS 的底层接口。botocore 是 boto3(第22名)库的基础,后者可以让你访问亚马逊的S3、EC2等服务。

Botocore 也是 AWS-CLI 的基础,后者是 AWS 的命令行界面。

s3transfer(第七名)是用于管理S3传输的 Python 库。该库仍在开发中,它的主页依然不建议使用,或者使用时至少要固定版本,因为即使在小版本号之间它的API也可能会发生变化。boto3、AWS-CLI 和许多其他项目都依赖于 s3transfer。

AWS 相关的库的排名如此高,正说明了 AWS 的服务是多么流行。

4. Pip

6.27亿次下载

我猜许多人都知道并且喜爱 pip(Python的包安装工具)。使用 pip 从 Python Package Index和其他仓库(如本地镜像或包含私有软件的自定义仓库等)安装软件包不费吹灰之力。

关于 pip 的趣事:

  • Pip 的名字是个递归定义:Pip Installs Packages

  • Pip 非常容易使用。安装一个软件包只需要执行 pip install <软件包名>。删除只需要执行 pip uninstall <软件包名>。

  • Pip 最大的好处就是它可以安装一系列包,通常会放在 requirements.txt 文件中。该文件还可以指定每个包的详细版本号。绝大多数 Python 项目都会包含这个文件。

  • 与 virtualenv(第57名)结合使用 pip,可以创建可预测的、独立的环境,而不会与系统本身的环境互相影响。

5. python-dateutil

6.17亿次下载

Python-dateutil 模块为标准的 datetime 模块提供了强大的功能扩展。普通的 Python datetime 无法做到的事情都可以使用 python-dateutil 完成。 

用这个库可以完成许多非常酷的功能。我只举一个非常有用的例子:从日志文件中模糊解析日期字符串:

from dateutil.parser import parse

logline = 'INFO 2020-01-01T00:00:01 Happy new year, human.'
ti
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值