Pythonライブラリのダウンロード数ランキング【TOP5】

この記事では、過去1ヶ月(2022年9~10月)におけるPyPI(Python Package Index)のダウンロード数トップ5のPythonライブラリ(パッケージ)を解説していきます。

第1位:boto3

  • boto3とは、Pythonのアプリケーション・ライブラリ・スクリプトを「AWSの各種サービスへと統合するためのライブラリ」である。
  • 「SDK for Python」とも言う。
  • 「クライアントAPI 」と「リソースAPI」の2種類の呼び出し方がある(補足情報を参照)。

第2位:urllib3

  • urllib3とは、「HTTP通信を扱うためのライブラリ」である。
  • 「HTTPクライアント」とも言う。
  • 「スレッドセーフ」、「コネクションプール」、「ファイルアップロード機能」などの機能がurllibから拡張されている。

第3位:botocore

  • botocoreとは、Pythonのアプリケーション・ライブラリ・スクリプトを「AWSの各種サービスへと統合するためのライブラリ(低レベル)」である。
  • 「低レベルインターフェース(Low-Level Interface)」。
  • boto3の中に含まれている。

第4位:idna

  • idnaとは、「IDNAプロトコルに対応するためのライブラリ」である。
  • IDNA(Internationalizing Domain Names in Applications、国際化ドメイン名)とは、「ドメイン名にASCII以外の文字も使用できるようにするための仕組み」。
  • 標準ライブラリ(encoding.idna)も存在するが、古いプロトコル(RFC 3490)にしか対応していない。

第5位:typing-extensions

  • typing-extensionsとは、「古いバージョンのPythonにおいて、新しいバージョンに搭載された型を使用するためのライブラリ」である。
  • 例えば、Python 3.10から導入された「typing.TypeGuard」やPython 3.8から導入された「typing.Literal」に対応することができる。
  • 「try / except」を組み合わせて、型の存在可否を検証する(補足情報を参照)。

ランキング表(TOP20)

ランキングライブラリ名ダウンロード数
1boto3376,750,112
2urllib3253,027,410
3botocore238,514,686
4idna234,371,700
5typing-extensions231,869,413
6requests223,291,773
7setuptools196,722,834
8s3transfer190,818,727
9google-api-core190,507,927
10charset-normalizer188,177,158
11certifi185,442,631
12python-dateutil165,092,047
13six162,631,326
14click162,119,414
15pyyaml150,148,879
16jinja2149,842,457
17cryptography147,752,881
18attrs139,001,542
19awscli132,374,884
20numpy129,181,584

筆者の所感

  • 正直、意外だったランキング(numpy / pandas / djangoあたりが上位という印象だった)。
  • データサイエンティストよりもエンジニアの方が、人口が多いことを実感。
  • これまでの仕事の現場ではあまり使ってこなかったライブラリも何個か知れて、学びになった。

最後に

いかがだったでしょうか?

この記事を通して、少しでもあなたの学びに役立てば幸いです。

この他にも、Twitterにて「データサイエンティスト / エンジニアに役立つ情報を発信中」です。

ご興味があれば、ぜひフォローお願い致します。

参考文献

補足情報

boto3のクライアントAPIとリソースAPIの記述方法

# クライアントAPI
s3_client = boto3.client('s3')

# リソースAPI
s3_resource = boto3.resource('s3')

typing-extensionsのtry/catchによる検証方法

try:
    from typing import Literal
except ImportError:
    from typing_extensions import Literal

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA