Pythonでlibssl.so.1.1がインポートエラー

2023.8.23

はじめに

WSL2のubuntuを20.04.6 LTS (Focal Fossa)から22.04.3 LTS (Jammy Jellyfish)にアップグレードしたあと、pythonで書いているスクリプトからエラーが出るようになってしまったので対応しました。

エラー内容

今までちゃんと動いていたスクリプトが動かなくなりました。

Traceback (most recent call last):
  File "/home/mokuzine/zine/amazon/get_items.py", line 8, in <module>
    from paapi5_python_sdk.api.default_api import DefaultApi
  File "/home/mokuzine/zine/amazon/paapi5_python_sdk/__init__.py", line 29, in <module>
    from paapi5_python_sdk.api.default_api import DefaultApi
  File "/home/mokuzine/zine/amazon/paapi5_python_sdk/api/__init__.py", line 29, in <module>
    from paapi5_python_sdk.api.default_api import DefaultApi
  File "/home/mokuzine/zine/amazon/paapi5_python_sdk/api/default_api.py", line 31, in <module>
    from paapi5_python_sdk.api_client import ApiClient
  File "/home/mokuzine/zine/amazon/paapi5_python_sdk/api_client.py", line 40, in <module>
    from paapi5_python_sdk import rest
  File "/home/mokuzine/zine/amazon/paapi5_python_sdk/rest.py", line 30, in <module>
    import ssl
  File "/home/mokuzine/.anyenv/envs/pyenv/versions/3.11.1/lib/python3.11/ssl.py", line 100, in <module>
    import _ssl             # if we can't import it, let the error propagate
    ^^^^^^^^^^^
ImportError: libssl.so.1.1: cannot open shared object file: No such file or directory

openssl自体はインストールされているので参照がおかしくなってしまった可能性。

# インストールされているか確認。
openssl version

対応

Pythonをインストールしなおすと解決しました。

$ pyenv install
pyenv: /home/mokuzine/.anyenv/envs/pyenv/versions/3.11.1 already exists
continue with installation? (y/N) y
Downloading Python-3.11.1.tar.xz...
-> https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tar.xz
Installing Python-3.11.1...
Installed Python-3.11.1 to /home/mokuzine/.anyenv/envs/pyenv/versions/3.11.1

sslモジュールがimportできるか確認。エラーが出なければOK。

python -m ssl

おすすめ

入門 Python 3 第2版
カテゴリ:プログラミング入門書
売れ筋ランキング:28位
価格:¥4,180

関連記事