Tidak dapat menjalankan aliran udara apache setelah instalasi baru, kesalahan impor python


19

setelah instalasi baru menggunakan pip install apache-airflow, setiap upaya untuk menjalankan aliran udara diakhiri dengan kesalahan impor python:

Traceback (most recent call last):
File "/Users/\*/env/bin/airflow", line 26, in <module> from airflow.bin.cli import CLIFactory
File "/Users/\*/env/lib/python3.7/site-packages/airflow/bin/cli.py", line 70, in <module> from airflow.www.app import (cached_app, create_app)
File "/Users/\*/env/lib/python3.7/site-packages/airflow/www/app.py", line 26, in <module> from flask_wtf.csrf import CSRFProtect
File "/Users/\*/env/lib/python3.7/site-packages/flask_wtf/__init__.py", line 17, in <module> from .recaptcha import \*
File "/Users/\*/env/lib/python3.7/site-packages/flask_wtf/recaptcha/__init__.py", line 2, in <module> from .fields import \*
File "/Users/\*/env/lib/python3.7/site-packages/flask_wtf/recaptcha/fields.py", line 3, in <module> from . import widgets
File "/Users/\*/env/lib/python3.7/site-packages/flask_wtf/recaptcha/widgets.py", line 5, in <module> from werkzeug import url_encode
ImportError: cannot import name 'url_encode' from 'werkzeug' (/Users/*/env/lib/python3.7/site-packages/werkzeug/__init__.py)

Sepertinya saya mendapat masalah yang sama hari ini dan bertanya-tanya tentang hal itu karena tidak ada perubahan besar dalam kode saya yang saya pikir akan melempar kesalahan jenis ini
— alltej

Saya memasang aliran udara pada instance tiga hari sebelumnya dan itu berfungsi dengan baik. Mirip dengan cara saya menginstalnya pada contoh lain ... itu melempar kesalahan yang sama ..
— Anidhya Bhatnagar

Jawaban:


23

Tampaknya menjadi kesalahan versi, versi yang lebih baru dari paket werkzeug tidak lagi memiliki url_encode yang dicari aliran udara, menginstal versi yang lebih rendah ( pip install werkzeug==0.16.0) menyelesaikan masalah dan aliran udara sekarang berjalan tanpa gagal.


1
Yap menggunakan werkzeug 1.0 (termasuk dengan Flask) memberi saya kesalahan yang sama, kembali ke 0.16.0 memperbaikinya
— Matty

1
@Jacob bagus sekali! Jika Anda ingin mendapatkan pembaruan tambalan yang potensial, gunakan sebaliknya pip install werkzeug==0.16.*...
— Enrico M.

1
Hebat @ Jacobs jawaban Anda menghemat banyak waktu saya yang lain saya akan berakhir debugging yang sama.
— Anidhya Bhatnagar

0

Kami telah memperbaikinya di Airflow 1.10.9, silakan instal versi terbaru:

pip install -U apache-airflow

atau pin Werkzeug dengan menjalankan pip install werkzeug<1.0

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.