Книга «Изучаем Python»



Pdf көрінісі
бет206/238
Дата07.01.2022
өлшемі7,86 Mb.
#18670
түріКнига
1   ...   202   203   204   205   206   207   208   209   ...   238
Байланысты:
2 5343781172763690906

УПРАЖНЕНИЯ

17-1 . Другие языки: измените вызов API в программе python_repos .py так, чтобы на диа-

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

ки, как JavaScript, Ruby, C, Java, Perl, Haskell и Go .

17-2 . Активные обсуждения: на основании данных из hn_submissions .py постройте столбцо-

вую диаграмму самых активных обсуждений, проходящих на Hacker News . Высота каждого 

столбца должна соответствовать количеству комментариев к каждой статье . Метка столбца 

должна включать заголовок статьи, а сам столбец должен служить ссылкой на страницу 

обсуждения этой публикации .

17-3 .  Тестирование  python_repos .py:  в  python_repos .py  для  проверки  успешности  вызова 

API  выводится  значение  status_code .  Напишите  программу  test_python_repos .py,  которая 

использует модуль unittest для проверки того, что значение status_code равно 200 . При-

думайте другие условия, которые могут проверяться при тестировании, — например, что 

количество возвращаемых элементов совпадает с ожидаемым, а общее количество репози-

ториев превышает некоторый  порог .



378    Глава 17  •  Работа с API

Итоги


В этой главе вы узнали, как использовать API для написания программ, авто-

матически собирающих необходимые данные и использующих полученную 

информацию для создания визуализации. Мы использовали GitHub API для 

получения информации о самых популярных проектах Python на GitHub, а также 

в общих чертах рассмотрели API Hacker News. Вы узнали, как с помощью пакета 

requests автоматически выдать вызов API к GitHub и как обработать результаты 

этого вызова. Также были описаны некоторые средства конфигурации Pygal, по-

зволяющие выполнить дополнительную настройку внешнего вида создаваемых 

диаграмм.

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




Проект 3

 .

  



Веб-приложения


18

Знакомство с Django

Современные веб-сайты в действительности представляют собой многофункцио-

нальные приложения, достаточно близкие к полноценным приложениям для 

настольных систем. Python содержит богатый набор инструментов для постро-

ения веб-приложений. В этой главе вы научитесь использовать Django (http://



djangoproject.com/) для построения проекта Learning Log — сетевой журнальной 

системы для отслеживания информации, полученной вами по определенной теме.

Мы напишем спецификацию для этого проекта, а затем определим модели для 

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

тивной системой Django для ввода некоторых начальных данных, а затем научимся 

писать представления и шаблоны, на базе которых Django будет строить страницы 

нашего сайта.

Django представляет собой веб-инфраструктуру — набор инструментов для постро-

ения интерактивных веб-сайтов. Django может реагировать на запросы страниц, 

упрощает чтение и запись информации в базы данных, управление пользователями 

и многие другие операции. В главах 19 и 20 мы доработаем проект Learning Log, 

а затем развернем его на сервере, чтобы вы (и ваши друзья) могли использовать их.

Подготовка к созданию проекта

В начале работы над проектом необходимо описать проект в спецификации. Затем 

вы создадите виртуальную среду для построения проекта.

Написание спецификации

В полной спецификации описываются цели проекта, его функциональность, 

а также внешний вид и интерфейс пользователя. Как и любой хороший проект 

или бизнес-план, спецификация должна сосредоточиться на самых важных аспек-

тах и обеспечивать планомерную разработку проекта. Здесь мы не будем писать 

полную спецификацию, а сформулируем несколько четких целей, которые будут 

задавать направление процесса разработки. Вот как выглядит спецификация:

Мы напишем веб-приложение с именем Learning Log, при помощи которого пользователь сможет 

вести  журнал  интересующих  его  тем  и  создавать  записи  в  журнале  во  время  изучения  каждой 

темы . Домашняя страница Learning Log содержит описание сайта и приглашает пользователя заре-

гистрироваться либо ввести свои учетные данные . После успешного входа пользователь получает 




Подготовка к созданию проекта    381

возможность создавать новые темы, добавлять новые записи, читать и редактировать существу-

ющие записи .

Во время изучения нового материала бывает полезно вести журнал того, что вы 

узнали, — записи пригодятся для контроля и возвращения к необходимой инфор-

мации. Хорошее приложение повышает эффективность этого процесса.

Создание виртуальной среды

Для работы с Django необходимо сначала создать виртуальную среду для работы. 



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

устанавливать пакеты в изоляции от всех остальных пакетов Python. Отделение 

библиотек одного проекта от других проектов принесет пользу при развертывании 

Learning Log на сервере в главе 20.

Создайте для проекта новый каталог с именем 

learning_log

, перейдите в этот 

 каталог в терминальном режиме и создайте виртуальную среду. Если вы работаете 

в Python 3, то сможете создать виртуальную среду следующей командой:

learning_log$ python -m venv ll_env

learning_log$

Команда запускает модуль 

venv

 и использует его для создания виртуальной среды 



с именем 

ll_env


. Если этот способ сработал, переходите к разделу «Активизация 

виртуальной среды» на с. 382. Если что-то не получилось, прочитайте следующий 

раздел — «Установка virtualenv».

Установка virtualenv

Если вы используете более раннюю версию Python или ваша система не настроена 

для правильного использования модуля 

venv

, установите пакет 



virtualenv

. Уста-


новка 

virtualenv

 выполняется следующей командой:

pip install --user virtualenv

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

(Если вы еще не использовали 

pip

, обратитесь к разделу «Установка пакетов Python 



с использованием pip» на с. 227.)



Достарыңызбен бөлісу:
1   ...   202   203   204   205   206   207   208   209   ...   238




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет