Прикоснитесь к миру данных для вашей следующей идеи приложения
Работаете ли вы с игрушечным приложением или создаете следующий большой продукт SaaS, использование общедоступных API — это общий строительный блок. Вам может понадобиться финансовая информация, спортивная статистика или даже просто погода. Использование огромного количества имеющейся в вашем распоряжении информации избавляет вас от необходимости заново изобретать велосипед.
В этой статье мы рассмотрим некоторые общедоступные бесплатные API, которые являются примерами простоты и элегантности. Они предоставляют простые в использовании интерфейсы, дают вам доступ к необходимой информации и, самое главное, не мешают формировать ваше видение.
1. Яху! Финансовый API (yfinance)
Если вы посмотрите в большинстве магазинов приложений, вы найдете кучу финансовых приложений. Все, от виджетов биржевых тикеров до полноценных программ построения графиков, всегда у вас под рукой. Но откуда все эти приложения берут данные?
Если они не являются крупной брокерской платформой с собственным внутренним источником, они, вероятно, используют сторонние ресурсы. Наличие небольшой задержки информации для биржевого тикера вашего телефона «в режиме реального времени» не является концом света. Так что не усложняйте, используйте то, что уже есть.
Хотя исходный API Yahoo Finance устарел много лет назад, возможность получать обновленные данные из Yahoo Finance все еще существует. В Python существует фантастическая оболочка для API под названием yfinance
. Этот модуль позволяет практически мгновенно приступить к работе с Yahoo Finance. Вам даже не нужна учетная запись или ключ API.
Ниже приведен краткий пример получения текущей цены предложения TSLA:
import yfinance tsla = yfinance.Ticker('TSLA') print(tsla.info['bid'])
Имейте в виду, что этот API является неофициальным, и некоторые методы просто очищают страницы Yahoo Finance. Это делает библиотеку более хрупкой, поэтому следите за частыми обновлениями. Проверьте официальный GitHub ниже:
Если вы ищете еще больше API для работы с финансовыми данными, ознакомьтесь с замечательной статьей Shen Huang: 5 лучших бесплатных API для фондового рынка в 2020 году.
2. Спортрадар Спорт API
Получение точных и актуальных спортивных данных имеет решающее значение для приложений, предлагающих любые интерактивные игровые возможности. Это особенно важно для приложений для ставок на спорт. Хотя большинство приложений для ставок используют проприетарные источники данных для обеспечения точных результатов, другие элементы спортивного мира можно легко перенести на сторонний API.
Фантастический вариант, доступный для любителей спорта, — это Sportradar API. Эта платформа предоставляет огромное количество информации о множестве событий, команд и даже игроков. С помощью этого API вы можете получить действительно впечатляющие данные.
Например, если вы хотите получить подробную информацию о конкретном игроке, у вас есть доступ к некоторым из следующих точек данных:
Они также предлагают интерактивный инструмент API, позволяющий легко протестировать некоторые из их конечных точек и понять, как должны быть структурированы запросы.
API предоставляет головокружительное количество конечных точек для каждого вида спорта. Вы даже можете получить статистику позиционирования в реальном времени для каждого удара в НХЛ. Уровень детализации поражает. Хотя этот API технически не бесплатен, они предлагают 90-дневный пробный ключ, с которым можно поиграть.
Ознакомьтесь с официальной документацией доступной здесь.
3. API открытых библиотечных книг
Кто не любит хорошую книгу? Возможно, вы создаете приложение, которое дает рекомендации по книгам или отслеживает прогресс чтения для книжного клуба. Наличие API с пакетом данных для получения подробной информации о названии или поиска книги по ISBN обеспечивает прочную основу для такого приложения.
Books API от Open Library предоставляет бесплатный общедоступный интерфейс для получения всех замечательных сведений о ваших любимых книгах. Он дико прост в использовании. Если вы хотите получить подробную информацию о Catcher In The Rye, все, что вам нужно сделать, это извлечь JSON из конечной точки API Works следующим образом:
curl https://openlibrary.org/works/OL3335292W.json
Вы можете найти OLID в этом URL, используя Поисковую систему Open Library. Если вы уже знаете ISBN, OCLC, LCCN или OLID книги, вы можете использовать Book API и передать его в качестве параметра. Это более гибко и позволяет вам получать информацию о книге, используя различные идентификаторы:
https://openlibrary.org/api/books?bibkeys=ISBN:0123456789
Ознакомьтесь с документацией для получения дополнительных примеров и руководств по использованию других доступных конечных точек.
4. API транспортных средств НАБДД
Что, если бы вы могли получить список всех марок и моделей автомобилей определенного типа? Как насчет оборудования и номеров деталей для автомобиля? Создание пользовательского каталога данных о транспортных средствах становится еще проще, если у вас есть доступ к огромному API, такому как бесплатный, который предоставляет NHTSA.
Используя API транспортных средств NHTSA, вы можете найти огромное количество информации об автомобилях. Если вы хотите узнать, что означает каждая позиция в номере VIN для Toyota Corolla 1999 года, вы можете это получить. А как насчет списка конкретных номеров деталей Honda? Готово.
Вот пример запроса, который возвращает все марки транспортных средств, зарегистрированных в NHTSA:
curl https://vpic.nhtsa.dot.gov/api/vehicles/getallmakes?format=json
Они также предоставляют еще одну уникальную конечную точку, которая возвращает все модели автомобилей данной марки и модельного года. Например, если вы хотите найти все модели Toyota, выпущенные в 1999 году, вы можете выполнить:
curl https://vpic.nhtsa.dot.gov/api/vehicles/getmodelsformakeyear/make/toyota/modelyear/1999?format=json
Ознакомьтесь с официальной документацией NHTSA API доступной здесь.
5. WorldTimeAPI
Если есть что-то, что всегда кусает разработчиков за задницу, так это время. Нам всегда этого мало. Не только это, но и преобразование и учет часовых поясов и изменений во времени — огромная рутинная работа. Вот почему вы должны передать свое время стороннему API, такому как WorldTimeAPI.
С помощью WorldTimeAPI вы можете делать такие вещи, как получение списка часовых поясов, получение текущего времени в часовом поясе или даже получение текущего времени для известного общедоступного IP-адреса. Этот API также полностью бесплатен и не требует учетной записи или регистрации.
Если вы хотите узнать текущее время в Лос-Анджелесе, вы можете просто нажать:
curl https://worldtimeapi.org/api/timezone/America/Los_Angeles
Если вы хотите получить текущее время для своего IP-адреса, вы можете сделать следующее:
curl https://worldtimeapi.org/api/ip
Ознакомьтесь с официальной документацией и Часто задаваемыми вопросами для получения подробной информации об использовании.
Спасибо за прочтение! Если вы пропустили первую часть этой серии, пожалуйста, ознакомьтесь с: