from time import sleep
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
URL = 'https://google.com/'
def get_url(drv):
drv.get(URL)
sleep(10)
def main():
service = Service(executable_path=ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)
try:
get_url(driver)
except Exception as error:
print(error)
finally:
driver.quit()
if __name__ == '__main__':
main()
Поведение VS Code:
Я в функции
main инициализирую
driver и передаю его в функцию
get_url(). В функции
get_url() я начинаю работать с этим драйвером - пишу
drv. и после нажатия точки или даже если в ручную вызвать intellisense (через Ctrl + Space) не появляются методы драйвера, но код работает.
Если я импортирую
from selenium.webdriver.chrome.webdriver import WebDriver
и в объявлении функции укажу для
drv type hint
def get_url(drv: WebDriver):
то intellisense работает как надо, показывает все методы доступные драйверу.
Поведение PyCharm:
Intellisense PyCharm'а работает корректно и с type hints и без него.
Вопрос:
Как сделать так, чтобы intellisense в VS Code работал без type hints?