celery报错EntryPoints‘ object has no attribute ‘get‘ 和 not enough values to unpack (expected 3

在使用celery命令

 celery -A clery_tasks.main worker -l info时出现如下错误信息:

 查询后发现应当安装下列包(转自:(13条消息) 解决 celery 报错 ‘EntryPoints‘ object has no attribute ‘get‘ 和 not enough values to unpack (expected 3,_李摆烂的博客-CSDN博客)

pip install frozenlist==1.3.1 geopy==2.2.0 humanize==4.3.0 idna==3.3 importlib-metadata==4.12.0 jsonschema==4.9.0 korean_lunar_calendar==0.2.1 marshmallow==3.17.0 pyOpenSSL==22.0.0 pyrsistent==0.18.1 python-dotenv==0.20.0 pytz==2022.2.1 selenium==4.4.0 simplejson==3.17.6 sniffio==1.2.0 trio==0.21.0 urllib3==1.26.11 wsproto==1.1.0 zipp==3.8.1
 
# 如果上述安装仍未解决, 则执行以下安装(笔者执行完上述安装即能解决问题)
pip install backoff==2.1.2 colorama==0.4.5 croniter==1.3.5 cryptography==37.0.4 email-validator==1.2.1 flask-compress==1.12 flask-migrate==3.1.0 aiohttp==3.8.1 aiosignal==1.2.0 Mako==1.2.1 Babel==2.10.3

解决后django 环境出现如下错误

ImportError: cannot import name 'Celery' from 'celery'

本以为时python解释器的版本的问题,最后发现是原因为importlib-metadata版本太高了,和celery 不兼容,将其降为4.13解决问题(转自博客园:三只松鼠)

又来一个错:

ValueError: not enough values to unpack (expected 3, got 0)

解决方法:安装eventlet包

pip install eventlet

运行时执行

celery -A celery_tasks.main worker -l info -P eventlet

还有一个错:(他*的,真服了,celery咋这么多坑啊)

AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'

解决方法

版本冲突:暴力删除openssl文件夹,可通过一下方法查看路径

import sys
print(sys.path)

你可能感兴趣的:(python,flask,后端)