Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 214

>>> import antigravity

Эта строка скрыто вызывает модуль стандартной библиотеки webbrowser и пе-

ренаправляет ваш браузер по просветительской ссылке. (Если вы по какой-то

причине не видите ее, посетите сайт xkcd.)

Вы можете использовать этот модуль непосредственно. Эта программа загру-

жает страницу главного сайта о Python в ваш браузер:

>>> import webbrowser

>>> url = 'http://www.python.org/'

>>> webbrowser.open(url)

True

Этот код откроет ее в новом окне:

>>> webbrowser.open_new(url)

True

Веб-сервисы и автоматизация

277

А этот — на новой вкладке, если ваш браузер поддерживает вкладки:

>>> webbrowser.open_new_tab('http://www.python.org/')

True

Модуль webbrowser заставляет браузер делать всю работу.

API для Сети

и Representational State Transfer

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

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

Если с момента вашего последнего визита авторы сайта внесли какие-нибудь из-

менения, местоположение и стиль данных могли измениться.

Вместо того чтобы публиковать веб-страницы, вы можете предоставить до-

ступ к данным через веб-интерфейс программирования приложений (Application

Programming Interface, API). Клиенты получают доступ к вашему сервису, делая

запросы к URL, и получают ответы, содержащие статус и данные. Вместо HTML-

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

мах вроде JSON и XML (в главе 8 содержится более подробная информация

о форматах).

Понятие «передача состояния представления» (Representational State Transfer,

REST) было определено Роем Филдингом (Roy Fielding) в его докторской дис-

сертации. Многие продукты имеют REST-интерфейс или интерфейс RESTful.

На практике это часто означает, что они имеют веб-интерфейс — определения URL,

предназначенные для доступа к веб-сервису.

Служба RESTful использует глаголы HTTP определенными способами, описан-

ными далее:

 HEAD — получает информацию о ресурсе, но не его данные;

 GET — как подразумевает имя, GET получает данные ресурса с сервера. Это стан-

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

дите URL с вопросительным знаком (?), за которым следует несколько аргу-

ментов, вы можете распознать запрос GET. GET не должен использоваться для

создания, изменения или удаления данных;

 POST — этот глагол обновляет данные на сервере. Он часто используется для

HTML-форм и сетевых API;

 PUT — этот глагол создает новый ресурс;

 DELETE — этот глагол говорит сам за себя: DELETE удаляет. Мы за правдивость

в рекламе!