Русский
Русский
English
Статистика
Реклама

Interesting

17 интересных (и забавных) API для вашего проекта

17.06.2021 10:17:44 | Автор: admin


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


Numbers


Страница: http://numbersapi.com/


Сервис содержит много интересных фактов о числах, которыми можно похвастаться перед друзьями.


number


Также есть факты о датах и годах.


Использование API: http://numbersapi.com/<number>/<type>, где number число, а type тип факта (trivia факт из жизни, math математический факт, date и year вопрос про дату (в формате MM/DD) и год). Например, получить факт о 25 октября можно по
запросу http://numbersapi.com/10/25/date: October 25th is the day in 1760 that George III becomes King of Great Britain.


С помощью этого сервиса можно сделать виджет "Этот день в истории".


База вопросов для викторин


Сайт: http://jservice.io


Если вы хотели создать викторину, то вы знаете, насколько сложно найти хорошие вопросы. Теперь же вы можете получать их в удобном формате по одному запросу. Для многих вопросов указана сложность, категория и достоверность вопроса (то есть количество людей, которые посчитали вопрос некорректным).


Получение вопроса: http://jservice.io/api/random?count=1


Пример вопроса (фрагмент):


{  "id": 92576,  "answer": "7",  "question": "When writing, many Europeans cross it; most Americans don't",  "value": 800,  "airdate": "2008-12-08T12:00:00.000Z",  "created_at": "2014-02-14T01:58:09.356Z",  "updated_at": "2014-02-14T01:58:09.356Z",  "category_id": 8472,  "game_id": null,  "invalid_count": null,  "category": {    "id": 8472,    "title": "a number from 1 to 10",    "created_at": "2014-02-11T23:28:10.844Z",    "updated_at": "2014-02-11T23:28:10.844Z",    "clues_count": 10  }}

Чем заняться, когда скучно


Документация: http://www.boredapi.com/documentation


Сервис BoredAPI может предложить занятие на любой случай жизни: бесплатные, социальные, доступные везде и так далее.


>> http://www.boredapi.com/api/activity?minparticipants=5&maxparticipants=8  - поиск активности с участием от 5 до 8 человек{"activity":"Play basketball with a group of friends","type":"social","participants":5,"price":0,"link":"","key":"8683473","accessibility":0.7}```>> http://www.boredapi.com/api/activity?type=diy  - выбор из категории DIY{"activity":"Learn woodworking","type":"diy","participants":1,"price":0.3,"link":"","key":"9216391","accessibility":0.3}

Колода карт


Примеры: https://deckofcardsapi.com


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


>> https://deckofcardsapi.com/api/deck/new/shuffle/?deck_count=3  - создание стопки карт из 3 колод по 52 карты"deck_id": "c3hmntqq4wne", "remaining": 156>> https://deckofcardsapi.com/api/deck/c3hmntqq4wne/draw/?count=1  - достать и вернуть одну карту{"code": "6D", "image": "https://deckofcardsapi.com/static/img/6D.png", "value": "6", "suit": "DIAMONDS"}

В репозитории проекта вы можете найти картинки карт и мастей, которые можно использовать в своих проектах: https://github.com/crobertsbmw/deckofcards/tree/master/static/img


6d


http.cat


Домашняя страница: https://http.cat


Здесь собраны картинки с котиками для каждого HTTP кода, с помощью которых можно украсить страницы с ошибками. Получить соответствующую картинку можно по запросу https://http.cat/<status_code>. Также исходные файлы находятся в открытом репозитории на Github, поэтому вы можете скачать все картинки из папки https://github.com/httpcats/http.cat/tree/master/public/images-original и использовать их локально.


Мои любимые картинки:




Интересный факт: домен .cat выделен под сайты на каталонском языке, но люди из интернета нашли и ему ещё одно применение, и теперь на нём создаются сайты про котов.


Поиск аниме


Документация: https://kitsu.docs.apiary.io/#introduction/json:api


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


Пример работы с API: поиск всех результатов, содержащих слово Tokio: https://kitsu.io/api/edge/anime?filter[text]=tokio


Один из результатов (убраны некоторые аттрибуты):


{  "id": "8271",  "type": "anime",  "attributes": {    "synopsis": "Tokyo has become a cruel and merciless citya place where vicious creatures called ghouls...",    "titles": {      "en": "Tokyo Ghoul",      "en_jp": "Tokyo Ghoul",      "en_us": "Tokyo Ghoul"    },    "canonicalTitle": "Tokyo Ghoul"  },  "favoritesCount": 3599,  "popularityRank": 30,  "ageRating": "R",  "posterImage": {    "original": "https://media.kitsu.io/anime/poster_images/8271/original.jpg?1597694836"  },  "episodeCount": 12,  "episodeLength": 24,  "totalLength": 288}

Картинки с котами, собаками и лисами


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


Картинки котиков


https://aws.random.cat/meow возвращается только ссылка на картинку или гифку. Ссылки случайные и ведут на сторонние сервера.


Каждая картинка из базы имеет номер, но API не даёт номер, а получить картинку по номеру только открыв сайт https://aws.random.cat/view/<number> и достать картинку из исходного текста страницы. Совсем простенький скрипт для этого (для более быстрого исполнения я не использую re):


from requests import getnum = int(input())source = get(f"https://aws.random.cat/view/{num}").textif "id=\"cat" in source:    print(source.split("src=\"")[1].split("\"")[0])else:    print("Incorrect id")

Картинки собачек


https://random.dog/woof.json возвращает размер картинки (или gif или видео) в байтах и ссылку на неё. Все ссылки выглядят как https://random.dog/<random name>


Другие варианты запросов:


  • /woof получить название какой-нибудь случайной картинки (случайная строка)
  • /doggos названия всех картинок
  • /upload предложить свою картинку.

Картинки лисичек


https://randomfox.ca/floof/ возвращает 2 варианта ссылки на картинку. Пути к картинкам выглядят так: https://randomfox.ca/images/<id>.jpg, где id число от 1 до 121. Также все картинки есть в репозитории: https://github.com/xinitrc-dev/randomfox.ca/tree/master/images. Это позволяет вручную выбрать интересные картинки и использовать только их.



База знаний о Покемонах


Страница: https://pokeapi.co


Этот сервис позвляет легко получить информацию о покемонах, их способностях и типах, а также о контенте про покемонов: играх и прочем.


Формат запросов: https://pokeapi.co/api/v2/<type>/<name or id>, например https://pokeapi.co/api/v2/ability/2.


Фрагмент из ответа на запрос информации про Ditto (https://pokeapi.co/api/v2/pokemon/ditto):



{  "abilities": [    {      "ability": {        "name": "limber",        "url": "https://pokeapi.co/api/v2/ability/7/"      },      "is_hidden": false,      "slot": 1    },    {      "ability": {        "name": "imposter",        "url": "https://pokeapi.co/api/v2/ability/150/"      },      "is_hidden": true,      "slot": 3    }  ]}

Be like Bill


Репозиторий: https://github.com/gautamkrishnar/Be-Like-Bill


В меме "Be like Bill" описываются какие-то положительные качества Билла и в конце звучит рекомендация "Быть как он". API позволяет генерировать картинки с заданными или рандомными текстами.


Примеры:


  • https://belikebill.ga/billgen-API.php?default=1&name=Otter случайное качество для имени Otter


  • https://belikebill.ga/billgen-API.php?text=Use%20this%20power%20wisely заданный текст


Bakon Ipsum


Документация: https://baconipsum.com/json-api/


Сервис позволяет использовать сгенерированные тексты вместо стандартного Lorem Ipsum. Можно задать количество предложений или параграфов. Пример запроса:


https://baconipsum.com/api/?type=all-meat&sentences=2 создание текста с 2 предложениями.


Tenderloin short ribs pork chop shankle chuck, cow boudin tongue. Pancetta pastrami pork loin beef ribs, cupim tenderloin filet mignon corned beef.

Шутки


Под эту категорию подходит сразу несколько сервисов с похожими API, поэтому приведу только примеры запросов к API:


Гиковские шутки (часто про Чака Норриса): https://geek-jokes.sameerkumar.website/api?format=json:
There are only 10 types of people in the world: those that understand binary and those that don't.


Шутки от папы: curl https://icanhazdadjoke.com:
Why do you never see elephants hiding in trees? Because they're so good at it.


Шутки с конструкцией сетап-панчлайн: https://official-joke-api.appspot.com/random_joke:
"setup":"I couldn't get a reservation at the library...","punchline":"They were fully booked."


Yes or No


Главная страница: https://yesno.wtf


Если вы хотите красиво отвечать на вопросы да или нет, то этот сервис идеально подходит для вас. Для получения рандомной гифки можно использовать https://yesno.wtf/api. Ответом вам будет "answer" и ссылка на гиф. Также с шансом 1 к 10000 может выпасть ответ maybe. Чтобы получить определённый ответ, можно указать ?force=<answer>, параметр answer может
быть yes, no или maybe.



Вся информация о мультсериале "Рик и Морти"


Главная страница: https://rickandmortyapi.com


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


import ramapiprint(ramapi.Character.filter(name='morty',                              status='dead'))  # получить список мёртвых персонажей, у которых в имени есть Морти. 

Фрагмент ответа


{  "results": [    {      "id": 43,      "name": "Big Morty",      "status": "Dead",      "species": "Human",      "gender": "Male",      "image": "https://rickandmortyapi.com/api/character/avatar/43.jpeg",      "episode": [        "https://rickandmortyapi.com/api/episode/28"      ]    }  ]}

Выводы


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




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


Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!


Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru