芹菜 平方英尺 - pycurl错误



今天,我一直在尝试使用AWS SQ作为经纪人设置芹菜,但是在裁定以下内容时:

test.py

from celery import Celery
access_key_id = '********************'
secret_access_key = '****************************************'
broker_url = 'sqs://%s:%s@' %(access_key_id, secret_access_key)
app = Celery('test', backend=None, broker=broker_url)
@app.task
def add(x, y):
    return x + y

尝试使用命令

运行芹菜工人
celery -A test worker --loglevel=info

使用此错误,我会收到以下错误:

Unrecoverable error: ImportError('The curl client requires the pycurl library.',)

我安装了以下软件包:

amqp (2.2.2)
billiard (3.5.0.3)
boto (2.48.0)
boto3 (1.4.7)
botocore (1.7.48)
celery (4.1.0)
docutils (0.14)
jmespath (0.9.3)
kombu (4.1.0)
pip (9.0.1)
pycurl (7.43.0)
python-dateutil (2.6.1)
pytz (2017.3)
s3transfer (0.1.11)
schedule (0.5.0)
setuptools (37.0.0)
six (1.11.0)
vine (1.1.4)
wheel (0.30.0)

任何人都可以看到我在做错什么吗?预先感谢!

看起来您拥有的芹菜(4.1.0)版本可能是一个问题。如果我在降级为3.1.25后执行相同的代码,则可以正常工作。

我有相同的错误,这些步骤对我有用:

Mac:

brew upgrade openssl
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"   
export PYCURL_SSL_LIBRARY=openssl
python -m pip install celery[sqs]

centos:

pip uninstall pycurl
export PYCURL_SSL_LIBRARY=nss
pip install --compile pycurl

如果您在Mac上,则需要编译并安装Pycurl。如果尚未安装,您也可能需要安装openssl

brew install openssl
    
export PYCURL_SSL_LIBRARY=openssl 
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include" 
pip install --no-cache-dir pycurl

Linux类似地安装openssl

apt-get update -y && apt-get install -y libcurl4-openssl-dev libssl-dev gcc

检查Pycurl SSL文档以获取进一步的安装信息。

这在debian

上起作用
sudo apt install libcurl4-openssl-dev libssl-dev
pip uninstall pycurl
pip install pycurl --compile --global-option="--with-openssl" --no-cache-dir

相关内容

  • 没有找到相关文章

最新更新