1
resposta

erro flask cannot import name 'url_quote' from 'werkzeug.urls'

ImportError Traceback (most recent call last) Cell In[17], line 1 ----> 1 from flask import Flask, render_template, request 3 # Criando uma classe 4 class Jornada:

File ~\AppData\Roaming\Python\Python311\site-packages\flask_init_.py:7 4 from werkzeug.utils import redirect as redirect 6 from . import json as json ----> 7 from .app import Flask as Flask 8 from .app import Request as Request 9 from .app import Response as Response

File ~\AppData\Roaming\Python\Python311\site-packages\flask\app.py:28 25 from werkzeug.routing import Rule 26 from werkzeug.wrappers import Response as BaseResponse ---> 28 from . import cli 29 from . import json 30 from .config import Config

File ~\AppData\Roaming\Python\Python311\site-packages\flask\cli.py:18 15 from werkzeug.utils import import_string 17 from .globals import current_app ---> 18 from .helpers import get_debug_flag 19 from .helpers import get_env 20 from .helpers import get_load_dotenv

File ~\AppData\Roaming\Python\Python311\site-packages\flask\helpers.py:16 14 from werkzeug.exceptions import NotFound 15 from werkzeug.routing import BuildError ---> 16 from werkzeug.urls import url_quote 18 from .globals import _app_ctx_stack 19 from .globals import _request_ctx_stack

ImportError: cannot import name 'url_quote' from 'werkzeug.urls' (C:\Users\ssssaf\AppData\Roaming\Python\Python311\site-packages\werkzeug\urls.py)

1 resposta

Oi Marina! Tudo bem?

Esse erro geralmente ocorre devido a mudanças nas versões das bibliotecas. O werkzeug é uma biblioteca que o Flask utiliza, e algumas funções podem ter sido removidas ou alteradas em versões mais recentes.

E no contexto do curso o erro pode estar acontecendo pelo fato de você usar uma versão antiga do Flask. Logo, recomendo que você apague a que você tem instalado e instale a mais atual. Você pode fazer isso seguindo os passos a seguir:

  1. Abra o terminal na pasta do projeto e execute o comando abaixo:

    pip uninstall flask
    
  2. Agora, com a versão antiga desinstalada, instale a atual sem especificar a versão, pois, por padrão, será pega a versão mais atual:

    pip install flask
    

Você deve estar se perguntando porque você teve que fazer esse processo para o Flask e não para o Werkzeug, já que o problema está nele. Se dar pelo fato de que o Werkzeug é instalado juntamente com a instalação do Flask, logo, para temos um Werkzeurg compatível com o Flask basta instalar a versão mais atual do Flask.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.