![](/img/trans.png)
[英]Getting “module 'imaplib' has no attribute 'IMAP4_SSL'” when using imaplib with cx_Freeze
[英]Cannot resolve module 'imaplib2' has no attribute 'IMAP4_SSL'
有很多關於imaplib2 has no attribute IMAP4_SSL
的問題,但其他問題中的解決方案都沒有對我有用。
我有一個 python 腳本,它在 AWS 上運行多年沒有問題,但是在我升級到Ubuntu 20.04.2 LTS
后,它開始拋出關於IMAP4_SSL
的錯誤。 在研究了這個問題之后,我相信它可能與 Python 中的映射有關,但對我來說這一切看起來都是正確的。 我還檢查了沒有安裝可能導致沖突的其他 Python 版本。
這是 Python 和imaplib2
package 的路徑
$ which python3
/usr/bin/python3
$ python3 --version
Python 3.8.5
$ whereis python3
'/usr/bin/python3.8-config'
'/usr/bin/python3'
'/usr/bin/python3.8'
'/usr/lib/python3'
'/usr/lib/python3.8'
'/usr/lib/python3.9'
'/etc/python3'
'/etc/python3.8'
'/usr/local/lib/python3.8'
'/usr/include/python3.8'
'/usr/share/python3'
'/usr/share/man/man1/python3.1.gz'
$ sys.path
''
'/usr/lib/python38.zip'
'/usr/lib/python3.8'
'/usr/lib/python3.8/lib-dynload'
'/home/ubuntu/.local/lib/python3.8/site-packages'
'/usr/local/lib/python3.8/dist-packages'
'/usr/lib/python3/dist-packages'
> import imaplib2
> imaplib2.__file__
'/home/ubuntu/.local/lib/python3.8/site-packages/imaplib2/__init__.py'
問題可能是您使用的是來自 PyPI 的過時版本的imaplib2
。 您可以使用以下命令在 Ubuntu 上安裝更新版本。
sudo apt install python3-imaplib2
(或者,如果您不在 Ubuntu 上,您可以隨時從源代碼安裝。)
根據您的PYTHONPATH
和安裝舊版本imaplib2
的位置,您可能還需要使用pip
卸載舊版本,然后import imaplib2
才能導入正確的版本。
python3 -m pip uninstall imaplib2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.