#python #visual-studio-code #pylance
Вопрос:
У меня есть следующая строка в моем проекте
from requests.packages.urllib3.util.retry import Retry
Все, что связано с requests
работой, работает без проблем, даже повторная попытка
from requests import Session
from requests.adapters import HTTPAdapter
from requests.packages.urllib3.util.retry import Retry
requests = Session()
retry = Retry(connect=8, backoff_factor=0.5)
adapter = HTTPAdapter(max_retries=retry)
requests.mount("http://", adapter)
requests.mount("https://", adapter)
Но по какой-то неизвестной причине Пиланс жалуется Retry
, что модуль не может быть найден.
Что может быть этим предупреждением?
Ответ №1:
Можете ли вы изменить его на:
from urllib3.util import Retry
Пиланс не настолько умен. Вот что в packages.py
файле:
for package in ('urllib3', 'idna', 'chardet'):
locals()[package] = __import__(package)
# This traversal is apparently necessary such that the identities are
# preserved (requests.packages.urllib3.* is urllib3.*)
for mod in list(sys.modules):
if mod == package or mod.startswith(package '.'):
sys.modules['requests.packages.' mod] = sys.modules[mod]
Пиланс не мог правильно рассуждать с этими кодами.