Продолжаем наш журналистский проект, в котором мы на практике будем применять наши журналистские знания — мы напишем робота на Python, который еженедельно (или ежедневно, как захотите) будет собирать крупнейшие госконтракты в России, упаковывать их в удобную для анализа форму и отправлять нам на почту.

В первом уроке мы установили редактор Visual Studio Code и изучили базовые команды терминала. Сегодня мы поговорим о виртуальном окружении проекта и установим некоторые необходимые библиотеки. 

Видео: Глеб Лиманский

Для чего нужно виртуальное окружение

Когда вы пишите что-то на языке Python, вы почти всегда будете использовать сторонние библиотеки. У этих библиотек есть различные версии. Разные приложения могут использовать одни и те же библиотеки, но разных версий, и если версия библиотеки не будет совпадать с требуемой приложением, могут возникнуть сбои. Как раз для того, чтобы избежать таких ошибок, нужно создавать виртуальное окружение. 

Создаем виртуальное окружение

Открываем наш проект main.py в Visual Studio Code и проверяем, в какой версии Python мы сейчас работаем. Для этого в терминале печатаем type python3. У меня 3.7 — это основная версия Python, установленная на моем компьютере. У вас путь к локации может отличаться, если вы устанавливали Python с помощью Anaconda. 

В Python несколько способов создания виртуального окружения. Мы будем использовать инструмент Pipenv — для начала нам нужно его установить. Пишем в терминале команду pip install pipenv и нажимаем «Enter». pip это менеджер пакетов, который позволяет устанавливать сторонние библиотеки, install это команда установки, а pipenv, соответственно — название библиотеки.

Библиотека установлена, теперь создаем виртуальное окружение — печатаем pipenv shell и выполняем команду. У нас должно появиться сообщение, что виртуальное окружение успешно создано.

Снова проверим нашу версию Python — вводим type python3. Теперь у нас другая версия, изолированная в своем виртуальном окружении.

Чтобы убедиться, что мы работаем именно с этой версией Python, нажимаем Command (Ctrl для Windows) + Shift + P — сверху появляется строка панели управления. Там мы ищем опцию «Select Interpreter». Нам нужно выбрать именно тот интерпретатор, который мы установили в виртуальном окружении. У нас его название начинается с «robot», поэтому печатаем «robot» в той же строке и кликаем на появившееся полное название.

Если в этом списке нет пути к нужной версии Python, то можно «убить» терминал — нажмите на иконку корзины в окне терминала, снова Command/Ctrl + Shift + P и повторите операцию с «Select Interpreter». Если даже это не помогло, попробуйте закрыть и снова открыть приложение Visual Studio Code. 

Так мы настроили виртуальное окружение. Теперь каждый раз, когда мы будем открывать наш проект, нам нужно будет всего лишь активировать его — для этого нужно ввести в терминале уже знакомую нам команду pipenv shell.

После создания виртуального окружения в папке приложения появился файл с названием «Pipfile». В нем перечислены требования и необходимые пакеты для нашего проекта. Пока в нашем проекте нет сторонних библиотек, поэтому единственное требование там пока — Python версии 3.7. 

Устанавливаем первую библиотеку

Первая библиотека, которая понадобится для нашего проекта — Requests, с ее помощью мы будем делать запросы и получать данные из интернета. Для установки печатаем в терминале pipenv install requests и нажимаем «Enter».

Если мы откроем наш Pipfile, то увидим, что библиотека Requests появилась в списке требований.  Кроме того, в папке проекта появился еще один новый файл — «Pipfile.lock».

Здесь находятся расширенные сведения о наших пакетах — например, точная версия библиотеки Request, которую мы установили. 

На сегодня это все. А в следующем уроке мы наконец-то начнем писать код и работать с реальными данными. Появились вопросы? Пишите в наш чат в Telegram, постараемся ответить.