Програмні інтерфейси додатків (Application Programming Interfaces), найчастіше їх називають API, — важливий інструмент, на якому працюють багато програм та сайтів.
По суті ці компоненти працюють «за кулісами», щоб дозволити авторизованим додаткам (а в деяких випадках і окремим користувачам) доступ до даних та можливість взаємодіяти із зовнішніми службами.
На щастя для розробників, існує безліч безкоштовних та багаторівневих API, які можна інтегрувати у власні апки.
Розробник Майк Вулф вирішив дослідити п’ять API та подивитися, що вони можуть запропонувати.
Відкриті API-інтерфейси NASA — це набір з більш ніж дюжини API-інтерфейсів, які надають тонни інформації про погоду, супутникову інформацію, зображення тощо.
Після того, як ви отримали безкоштовний ключ авторизації, ви отримаєте обмеження до 1000 запитів на годину.
Найулюбленіше API Майка в цій колекції — Astronomy Picture of the Day.
Приступимо:
import requests url = "https://api.nasa.gov/planetary/apod?api_key=<YOUR_API_KEY>" response = requests.get(url) print(response.json())
Ще одна безкоштовна колекція API — Open Library APIs. Ця колекція дозволяє шукати все, що пов’язане із книгами. Вона навіть допомагає знаходити книги, авторів, теми (і не тільки), використовуючи назви, ISBN, OCLC та LCCN.
Ви можете навіть шукати текст!
Приступимо:
import urllib import requests query = "The Pragmatic Programmer" query = urllib.parse.quote_plus(query) url = f"http://openlibrary.org/search.json?title={query}" response = requests.get(url) print(response.json())
Coin API не повністю безкоштовний, але має безкоштовну версію, яку ви можете використовувати, щоб дізнатися останні ринкові дані щодо криптовалют.
У безкоштовній версії ваш ліміт — лише 100 запитів на день.
Почнемо:
import requests url = "https://rest.coinapi.io/v1/exchangerate/BTC/USD" headers = {"X-CoinAPI-Key" : "<YOUR_API_KEY>"} response = requests.get(url, headers = headers) print(response.json())
Ще один API, який теж не повністю безкоштовний, але з безкоштовним рівнем — це News API.
Цей чудовий інструмент допомагає отримувати новини з авторитетних ЗМІ та блогів. Знову ж таки, якщо ви вирішите використовувати безкоштовну версію, отримаєте обмеження щодо кількості запитів, які ви можете надіслати, а також не зможете отримувати нові статті в режимі реального часу.
Приступимо:
import requests url = "https://newsapi.org/v2/everything?q=cryptocurrency&apiKey=<YOUR_API_KEY>" response = requests.get(url) print(response.json())
Бажаєте покращити свої враження від Spotify? Не шукайте далі, тому що вони теж мають API. Отримання client id та app secret для вашої апки займе лише кілька хвилин.
Тепер ви можете використовувати безліч ендпоінтів для отримання інформації про виконавців, альбоми тощо. Мало того, ви також можете додавати/видаляти/оновлювати елементи у своїх плейлистах.
Для всіх розробників Python є модуль Spotipy, який ще більше полегшує взаємодію з Spotify API.
Погнали:
import requests import spotipy from spotipy.oauth2 import SpotifyClientCredentials client_id = "<YOUR_CLIENT_ID>" client_secret = "<YOUR_CLIENT_SECRET>" client_credentials_manager = SpotifyClientCredentials(client_id = client_id, client_secret = client_secret) spot = spotipy.Spotify(client_credentials_manager = client_credentials_manager) query = "1812 Overture" search_result = spot.search(query, limit = 10, offset = 0, type = 'track', market = None) print(search_result)
Мета цього Bored API — запропонувати заняття, якщо вам нудно:
import requests url = "https://www.boredapi.com/api/activity/" response = requests.get(url) print(response.json())
Успіхів!
32-річний розробник безпеки інформаційних систем Агентства національної безпеки Джарех Себастьян Далке отримав 22 роки в'язниці…
Українська компанія Flytech представила розвідувальний безпілотний літальний апарат ARES. Основні його переваги — недорога ціна…
MC.today разом з Асоціацією IT Ukraine і сервісом моніторингу та аналітики згадок у ЗМІ та…
Україна не буде примусово повертати чоловіків призовного віку з-за кордону. Про це повідомила у Брюсселі…
В Збройних Силах України з'явився жіночий підрозділ з БПЛА. І вже проводиться конкурсний відбір до…
GitHub анонсував Copilot Workspace, середовище розробки з використанням «агентів на базі Copilot». За задумкою, вони…