Share This
Связаться со мной
Крути в низ
Categories
//Что такое requirements.txt и как с ним работать?

Что такое requirements.txt и как с ним работать?

11.10.2023Category : Python

Существует множество пакетов Python, которые мы ежедневно используем для решения различного рода задач. Возьмем, к примеру, библиотеку «Beautiful Soup» — она не поставляется с Python по умолчанию и должна быть установлена отдельно.

Многие проекты зависят от библиотек и других зависимостей, и установка каждой из них может быть утомительной и отнимать много времени.

Именно здесь на помощь приходит файл requirements.txt. Это файл, содержащий список пакетов или библиотек, необходимых для работы над проектом, которые желательно установить перед запуском. Это обеспечивает согласованность среды и облегчает совместную работу.

Формат файла requirements.txt

Файл requirements.txt представляет собой текстовый файл, используемый в Python-проектах для указания списка зависимостей и их версий.

Каждая строка в этом файле представляет одну зависимость и имеет формат имя_пакета==версия, где имя_пакета — это название библиотеки или пакета Python, а версия — это желаемая версия этой зависимости.

Этот файл часто используется с инструментами управления пакетами, такими как pip, для автоматической установки и управления зависимостями проекта.

Ключевые термины

Я уже упоминал несколько терминов, которые вы, возможно, не знаете. Вот что они означают:

  • Зависимости — это программные компоненты, которые необходимы программе для корректной работы. Это могут быть библиотеки, фреймворки или другие программы.
  • Пакеты — это способ объединения связанных зависимостей. Они облегчают установку и управление зависимостями.
  • Виртуальная среда — это каталог, содержащий копию интерпретатора Python и все пакеты, необходимые для конкретного проекта.
  • Pip — это менеджер пакетов для Python. С помощью pip можно устанавливать и удалять пакеты Python, а также управлять ими.

Как создать файл requirements.txt

Для создания файла зависимостей необходимо настроить виртуальную среду. Если вы используете PyCharm, то виртуальная среда уже настроена (.venv). Но при работе с кодом Visual Studio вам придется создавать виртуальную среду самостоятельно.

Для создания файла зависимостей можно использовать терминал или командную строку. Ниже перечислены шаги, которые необходимо выполнить для создании файла.

Во-первых, откройте терминал или командную строку. Затем перейдите в ваш рабочий каталог. Для этого используйте следующую команду:

$ cd folder-name #cd - change directory 

В этой команде замените ‘folder-name’ на имя каталога, к которому требуется получить доступ.

chto takoe requirementstxt i kak s nim rabotat d22b76b - Что такое requirements.txt и как с ним работать?

Переход к нужной директории при помощи команды cd

Далее выполните эту команду:

$ pip freeze > requirements.txt 

И вы увидите, что появился файл requirements.txt

chto takoe requirementstxt i kak s nim rabotat 307d47f - Что такое requirements.txt и как с ним работать?Изображение нужного нам файла в директории проекта

А вот содержимое только что созданного файла requirements.txt:

chto takoe requirementstxt i kak s nim rabotat 365c8f1 - Что такое requirements.txt и как с ним работать?Содержимое файла зависимостей

На скриншоте видны зависимости, используемые в нашем окружении, а также их версии.

Как работать с файлом requirements.txt

Теперь, когда у нас есть файл зависимостей, видно, что он содержит длинный список различных пакетов.

Для работы с пакетами необходимо их установить. Это можно сделать с помощью командной строки или терминала.

Введите эту команду:

pip install -r requirements.txt 

Установка будет выглядеть следующим образом:

chto takoe requirementstxt i kak s nim rabotat 3225455 - Что такое requirements.txt и как с ним работать?Установка пакетов, присутствующих в файле requirements.txt

Теперь, когда все зависимости установлены, можно работать с файлом requirements.txt.

Пример использования файла requirements.txt

В этом примере мы будем работать с двумя библиотеками,  beautifulsoup4 и requests, чтобы обрабатывать нужную нам информацию с сайта.

chto takoe requirementstxt i kak s nim rabotat 5dffe30 - Что такое requirements.txt и как с ним работать?Библиотеки для данного примера в файле requirements.txt

Мы видим, что в файле requirements.txt уже присутствуют обе библиотеки и указаны их версии, так что мы можем работать с ними.

Импортируйте библиотеку BeautifulSoup из пакета с именем bs4 (beautifulsoup4), а также импортируйте библиотеку requests в ваш Python-код.

from bs4 import BeautifulSoup import requests

Для получения информации из сайта мы используем метод .get() библиотеки requests.

web_data = requests.get("https://www.lithuania.travel/en/category/what-is-lithuania", headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"})

Теперь, когда мы получили нужные нам данные, передадим их в bs4 для дальнейшей обработки.

soup = BeautifulSoup(web_data.content, features="html.parser")

Нам нужен первый элемент с тегом p.

news_info = soup.findAll("p")[0] print(news_info.text  

Вот весь код целиком:

from bs4 import BeautifulSoup import requests web_data = requests.get("https://www.lithuania.travel/en/category/what-is-lithuania", headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"}) soup = BeautifulSoup(web_data.content, features="html.parser") news_info = soup.findAll("p")[0] print(news_info.text)

И вот результат запуска программы:

chto takoe requirementstxt i kak s nim rabotat 5cb6d54 - Что такое requirements.txt и как с ним работать?

Для чего нужен файл requirements.txt

  • Управление зависимостями. Перечисление зависимостей проекта в файле requirements.txt позволяет легко увидеть, какие пакеты и в каких версиях требуются.
  • Совместное использование проекта с другими пользователями. Если вы предоставляете проект другим пользователям, то можете включить в него файл requirements.txt, чтобы они могли легко установить необходимые пакеты. Это поможет сэкономить время и убедиться в том, что все используют одинаковые версии библиотек и пакетов.

Заключение

В статье мы разобрали, как создать файл requirements.txt, и рассказали о преимуществах его использования.

Вам также следует поработать с зависимостями самостоятельно для закрепления материала.

Перевод статьи «Python Requirements.txt – How to Create and Pip Install Requirements.txt in Python».

  • 0 views
  • 0 Comment

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Связаться со мной
Close