DevGang
Авторизоваться

5 бесплатных и забавных API-интерфейсов для обучения, личных проектов и многого другого!

Публичные API - это круто!

Только в публикации Towards Data Science есть более 50 статей, посвященных API, поэтому я не буду вдаваться в подробности введения. API в основном позволяют вам взаимодействовать с некоторыми инструментами или услугами (которые могут быть предоставлены буквально кем угодно).

Вы можете использовать API-интерфейсы, чтобы получить какую-то информацию из источника данных, а затем использовать ее в своем собственном скрипте или приложении. Публичные (открытые) API хороши тем, что они позволяют любому стороннему разработчику создать что-то, что может подключаться к существующей службе.

Существуют популярные API для выполнения «серьезных вещей», таких как отслеживание данных о запасах временных рядов или предоставление обновлений о качестве воздуха. Мы не будем касаться их в этой части, так как я хотел поделиться некоторыми забавными API-интерфейсами, с которыми вы можете экспериментировать, пока вы учитесь взаимодействовать с API или даже создаете его.

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

Давайте приступим!

1. PlaceGOAT - Бесплатные случайные фотографии коз

  Holy crap, это коза, созданная PlaceGoat
  Holy crap, это коза, созданная PlaceGoat

Я думал, что начну с очаровательного козленка.

Это действительно простой GET API, с помощью которого вы можете создавать изображения коз. Хотел бы я сказать больше, но это действительно так. Вот ссылки на основной сайт и репозиторий Github.

PlaceGOAT основной сайт
PlaceGOAT основной сайт

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

http://placegoat.com/width/height

Если вы просто хотите протестировать библиотеку requests на Python, это будет отличным местом для начала. Если вам нужна идея, попробуйте написать сценарий, чтобы ежедневно получать изображение козы и каждое утро отправлять его своей второй половинке (или своей маме), чтобы напоминать им о том, как сильно вы заботитесь о них. Это будет лучший вариант завтрака в постели.

2. PokéApi - база данных покемонов для основных игр.

PokéApi главная страница
PokéApi главная страница

Покемон! Надо * получить их всех, покемон!

RESTful PokéApi бесплатен для использования и позволяет ПОЛУЧАТЬ информацию из всеобъемлющей базы данных обо всем, начиная с игр Pokémon, от первых выпусков Red и Blue до Sword and Shield.

База данных действительно обширна. Вы можете получить что угодно: от способностей покемонов до триггеров эволюции и твердости ягод. Проверьте главный сайт PokéApi и документацию для получения дополнительной информации. Если вас интересует оболочка для конкретного языка, проверьте раздел «Библиотеки оболочек». Например, вы можете установить интерфейс Pokebase Python для использования непосредственно в ваших скриптах Python, вместо того, чтобы вызывать API с библиотекой requests.

PokéApi документы
PokéApi документы

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

https://pokeapi.co/api/v2/berry-firmness/
Результаты твердости ягод в формате JSON  
Результаты твердости ягод в формате JSON  

Обычно, когда вы вызываете конечную точку API, вы также должны указать идентификатор или имя, чтобы получить информацию о конкретной точке данных. В PokéApi говорят, что если вы вызываете конечную точку без идентификатора или имени, вы получите список по умолчанию, содержащий до 20 ресурсов, доступных для API. В этом случае существует 5 возможных результатов для конечной точки «твердость ягод», поэтому вы увидите, что все они возвращаются в формате JSON, когда вы вызываете ссылку выше.

Пришло время отметить, что при использовании полностью открытых API-интерфейсов следует помнить о том, как часто вы вызываете конечные точки службы. PokéApi удалил ограничение скорости (конфигурация API, определяющая, сколько запросов может быть выполнено за интервал времени), но по-прежнему напоминает пользователям ограничивать частоту их запросов, чтобы снизить расходы на хостинг. В своей политике добросовестного использования они говорят, что люди должны локально кэшировать запрошенные ресурсы и что DDoS-атаки приведут к постоянной блокировке IP-адресов. Будьте ответственным!

3. API Рика и Морти - персонажи, локации и многое другое от Рика и Морти.

Главный сайт Rick and Morty API
Главный сайт Rick and Morty API

Рик и Морти!

Этот API является RESTful и позволяет использовать GraphQL для запроса к нему. Они также удобно связывают вас с документами GraphQL, если вы новичок в языке запросов. Вы можете использовать API, запрашивая метаданные GET о персонажах, местах и ​​эпизодах шоу.

Документы API Рика и Морти
Документы API Рика и Морти

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

https://rickandmortyapi.com/api/character/5
  JSON результаты Джерри Смита
  JSON результаты Джерри Смита

Здесь поставка «5» дает нам информацию о персонаже Джерри Смита. Вы также видите в конце связанное изображение персонажа, поэтому, если вы хотите попрактиковаться в загрузке файлов из API, это может быть хорошим местом для начала.

Посетите основной сайт и документацию для получения дополнительной информации. Существует также множество библиотек- оболочек для разных языков от нескольких авторов, так что проверьте их, если вы предпочитаете их. Его реализацию на Python можно найти здесь. Кроме того, если вы знакомы с JavaScript и заинтересованы в участии в проекте с открытым исходным кодом, вы можете ознакомиться с API Рика и Морти на Github.

4. icanhazdadjoke - База данных отцовских анекдотов

icanhazdadjokes главный сайт
icanhazdadjokes главный сайт

Кто не любит отцовские шутки?

Я не уверен, учитываются ли мои каламбуры, связанные с API, но я определенно люблю всевозможные «плохие» шутки.

Вы можете использовать API icanhazdadjoke, чтобы получить отцовскую шутку из сервиса. В документации по API приведены примеры взаимодействия с конечными точками API с помощью curl.

icanhazdadjokes API документация
icanhazdadjokes API документация

curl - это удобный инструмент, который можно использовать со своего терминала для передачи данных на сервер или с сервера. В этом случае вы можете проверить это, используя HTTP для ПОЛУЧЕНИЯ определенного URL. Например, вы можете попробовать в своем терминале следующее:

curl -H "Accept: text/plain" https://icanhazdadjoke.com/
icanhazdadjoke curl вывод
icanhazdadjoke curl вывод

Аргумент командной строки -H позволяет включать один параметр, который в данном случае является «Accept: text/plain», из дополнительного заголовка в запросе. Эта модификация позволяет вам указать тип вывода вашего запроса, который здесь будет просто текстом. Вы также можете установить его в JSON ( Accept: text/html) или HTML ( Accept: Application/json), если вам это нужно.

Также есть конечная точка, которую вы можете использовать для поиска конкретных шуток, соответствующих определенному ключевому слову.

документация icanhazdadjoke API
документация icanhazdadjoke API

Было бы интересно попрактиковаться в поиске нескольких ключевых слов, вызвав эту конечную точку и сохранив результаты в базе данных. Тогда у вас будет локальная копия анекдотов на основе указанных вами ключевых слов.

Посетите основной сайт и документацию для получения дополнительной информации. Также существует конечная точка запроса GraphQL, которую вы можете использовать для запроса API, если вы хотите загружать данные таким образом.

5. Генератор злого оскорбления - средняя база данных

Главный сайт Evil Insult Generator
Главный сайт Evil Insult Generator

… этот сайт подлый.

Предпосылка действительно проста: вы вызываете API и получаете оскорбление.

Документация по API Evil Insult Generator
Документация по API Evil Insult Generator

Как и в случае с API козла, мне особо нечего сказать здесь.

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

https://evilinsult.com/generate_insult.php?lang=es&type=json
Результат вызова API Evil Insult Generator
Результат вызова API Evil Insult Generator

«Mala leche» буквально переводится с английского как «плохое молоко». В разговорной речи вы используете его, чтобы описать кого-то, кто действует недобросовестно, или кого-то в плохом настроении.

Вы также можете использовать этот API как действительно простой для практики выполнения запросов. Загляните на основной сайт и его (довольно простую) документацию, если хотите изучить.

И это все!

Я надеюсь, вы попробуете поработать с одним из них, когда начнете знакомиться с API или просто ищете что-то интересное для работы. Обязательно ответственно обращайтесь к API, поскольку они общедоступны и предназначены для бесплатного использования всеми. Слишком частое пингование их может привести к блокировке вашего IP-адреса, что, если вам нравятся картинки с козами (или какой-либо другой сервис, который вы используете), не будет хорошо.

Источник:

#Data Science
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

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

Попробовать

Оплатив хостинг 25$ в подарок вы получите 100$ на счет

Получить