S3に保存されているSQLiteファイルをクエリするPythonコンテキストマネージャー「sqlite-s3-query」

S3に保存されているSQLiteファイルをクエリするPythonコンテキストマネージャー「sqlite-s3-query」のインストールについて解説しています。

「sqlite-s3-query(https://github.com/michalc/sqlite-s3-query)」は、Amazon S3上に保存されたSQLiteファイルに問い合わせるためのPythonコンテキストマネージャです。ファイル全体のダウンロードを避け、クエリごとに複数のHTTPレンジリクエストを使用するのが特徴。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■sqlite-s3-queryをインストールする

sqlite-s3-queryをインストールを行いますが、今回はpipを経由してインストールを行うので、まずWindowsのコマンドプロンプトを起動します。

pip install sqlite-s3-query

起動後、上記のコマンドを入力し、Enterキーを押します。

なお、今回は、pythonランチャーを使用しており、Python Version 3.8.5にインストールを行うために、pipを使う場合にはコマンドでの切り替えを行います。

py -3.8 -m pip install sqlite-s3-query

切り替えるために、上記のコマンドを入力し、Enterキーを押します。

Defaulting to user installation because normal site-packages is not writeable
Collecting sqlite-s3-query
Downloading sqlite_s3_query-0.0.67-py3-none-any.whl (8.3 kB)
Requirement already satisfied: httpx>=0.18.2 in c:\users\user_\appdata\roaming\python\python38\site-packages (from sqlite-s3-query) (0.21.3)
Requirement already satisfied: sniffio in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpx>=0.18.2->sqlite-s3-query) (1.2.0)
Requirement already satisfied: charset-normalizer in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpx>=0.18.2->sqlite-s3-query) (2.0.2)
Requirement already satisfied: httpcore<0.15.0,>=0.14.0 in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpx>=0.18.2->sqlite-s3-query) (0.14.7)
Requirement already satisfied: certifi in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpx>=0.18.2->sqlite-s3-query) (2021.5.30)
Requirement already satisfied: rfc3986[idna2008]<2,>=1.3 in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpx>=0.18.2->sqlite-s3-query) (1.5.0)
Requirement already satisfied: anyio==3.* in c:\users\user_\appdata\roaming\python\python38\site-packages (from httpcore<0.15.0,>=0.14.0->httpx>=0.18.2->sqlite-s3-query) (3.5.0)
Collecting h11<0.13,>=0.11
Using cached h11-0.12.0-py3-none-any.whl (54 kB)
Requirement already satisfied: idna>=2.8 in c:\users\user_\appdata\roaming\python\python38\site-packages (from anyio==3.*->httpcore<0.15.0,>=0.14.0->httpx>=0.18.2->sqlite-s3-query) (3.2)
Installing collected packages: h11, sqlite-s3-query
Attempting uninstall: h11
Found existing installation: h11 0.13.0
Uninstalling h11-0.13.0:
Successfully uninstalled h11-0.13.0
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
seleniumbase 3.1.0 requires beautifulsoup4==4.11.1; python_version >= "3.6", but you have beautifulsoup4 4.8.2 which is incompatible.
seleniumbase 3.1.0 requires certifi>=2021.10.8, but you have certifi 2021.5.30 which is incompatible.
seleniumbase 3.1.0 requires chardet==4.0.0; python_version >= "3.5", but you have chardet 3.0.4 which is incompatible.
seleniumbase 3.1.0 requires charset-normalizer==2.0.12; python_version >= "3.5", but you have charset-normalizer 2.0.2 which is incompatible.
seleniumbase 3.1.0 requires cryptography==37.0.2; python_version >= "3.7", but you have cryptography 3.3.2 which is incompatible.
seleniumbase 3.1.0 requires h11==0.13.0; python_version >= "3.7", but you have h11 0.12.0 which is incompatible.
seleniumbase 3.1.0 requires idna==3.3; python_version >= "3.6", but you have idna 3.2 which is incompatible.
seleniumbase 3.1.0 requires pdfminer.six==20220319; python_version >= "3.7", but you have pdfminer-six 20191110 which is incompatible.
seleniumbase 3.1.0 requires pyopenssl==22.0.0; python_version >= "3.7", but you have pyopenssl 21.0.0 which is incompatible.
seleniumbase 3.1.0 requires requests==2.27.1; python_version >= "3.6", but you have requests 2.26.0 which is incompatible.
seleniumbase 3.1.0 requires six==1.16.0, but you have six 1.12.0 which is incompatible.
seleniumbase 3.1.0 requires tomli>=2.0.1; python_version >= "3.7", but you have tomli 1.2.3 which is incompatible.
seleniumbase 3.1.0 requires urllib3==1.26.9, but you have urllib3 1.26.6 which is incompatible.
helium 3.0.7 requires selenium==3.141.0, but you have selenium 4.1.5 which is incompatible.
Successfully installed h11-0.12.0 sqlite-s3-query-0.0.67

Enterキーを押すと、インストールが開始され、上記のように「Successfully installed」と表示されます。これが表示されれば、sqlite-s3-queryが正常にインストールされたことになります。

しかし、今回は「pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.(pip の依存性解決は現在インストールされているすべてのパッケージを考慮に入れていません。この挙動は以下のような依存関係の衝突の原因となっています。)」というエラーが出力されてしまいました。このエラーを解決するためには、仮想環境を構築し、インストールされることを推奨します。

なお、今回はsqlite-s3-queryのバージョン0.0.67をインストールしました。

コメント

タイトルとURLをコピーしました