Skip to content
This repository has been archived by the owner on Sep 25, 2024. It is now read-only.

Commit

Permalink
feat: Update to 2.5 (#17)
Browse files Browse the repository at this point in the history
  • Loading branch information
SecondThundeR authored May 3, 2023
2 parents de20899 + 3c86f7f commit 8b8f848
Show file tree
Hide file tree
Showing 121 changed files with 1,101 additions and 676 deletions.
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ repos:
- id: double-quote-string-fixer
- id: end-of-file-fixer
- repo: https://github.com/google/yapf
rev: v0.32.0
rev: v0.33.0
hooks:
- id: yapf
name: Formatting files with yapf
Expand All @@ -23,7 +23,7 @@ repos:
types: [python]
additional_dependencies: [toml]
- repo: https://github.com/PyCQA/pylint
rev: v2.17.2
rev: v2.17.3
hooks:
- id: pylint
name: Checking code with pylint
Expand Down
1 change: 1 addition & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ _(Лучше загуглить, чем писать тут как это дел
4. Ожидайте...
5. Если изменения пройдут ревью, пулл реквест будет принят и слит в ветку `develop`.
> В противном случае, разработчик оставит свои комментарии по поводу изменений
> Если вы закрываете какой-то баг репорт, гляньте пометку об этом выше в разделе "Помощь в решении баг репорта", дабы автоматически закрыть этот баг репорт
### Пожелания по данному документу
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2022 SecondThundeR
Copyright (c) 2022-2023 SecondThundeR

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
31 changes: 15 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,24 +16,23 @@
## Описание

Данный враппер предоставляет абстракцию, которая позволяет удобнее работать с методами API и их ответами.
Данный враппер предоставляет абстракцию, которая позволяет удобнее работать с методами API и их ответами

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

Все данные, возвращаемые API Shikimori, валидируются и парсятся в модели, со всеми необходимыми полями,
Для каждого эндпоинта API существует свой объект с методами, и все данные, возвращаемые API Shikimori, валидируются и парсятся в модели, со всеми необходимыми полями,
а также дополнительными, которые могут вернуть некоторые методы API _(Например /users/whoami и /users/:id/info возвращают разные поля)_.
Это позволяет не задумываться об обработке очередного ответа от сервера и сосредоточиться над реализацией своей идеи.
Это позволяет не задумываться об обработке очередного ответа от сервера и сосредоточиться над реализацией своей идеи

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

> Данная библиотека начинает свою поддержку с Python 3.8.10.
## Установка

```pip install shikithon```
```shell
pip install shikithon
```

## Пример использования

Expand Down Expand Up @@ -67,7 +66,7 @@ with open("config.json", "r", encoding="utf-8") as config_file:

# Инициализируем API объект с необходимыми опциями
# В данном примере используется JSONStore и отключено логирование
api = ShikimoriAPI(app_name=config['app_name'], store=JSONStore(), logging=False)
api = ShikimoriAPI(app_name=config['app_name'], store=JSONStore())

async def main():
# Используем объект без авторизации
Expand All @@ -86,7 +85,7 @@ async def main():
auth_code=config["auth_code"],
):
print(await api.users.current())
# >> User(id=723052, nickname='SecondThundeR', ...
# >> UserBrief(id=723052, nickname='SecondThundeR', ...

# Вариант 2

Expand Down Expand Up @@ -133,9 +132,9 @@ async def main():
print(lycoris_chisato[:1])
print(lycoris_ranobe)

# [Anime(id=44511, name='Chainsaw Man', russian='Человек-бензопила', ...]
# [Character(id=204621, name='Chisato Nishikigi', russian='Тисато Нисикиги', ...]
# [Ranobe(id=151431, name='Lycoris Recoil: Ordinary Days', russian='Ликорис Рикоил: Повседневность', ...]
# [AnimeInfo(id=44511, name='Chainsaw Man', russian='Человек-бензопила', ...]
# [CharacterInfo(id=204621, name='Chisato Nishikigi', russian='Тисато Нисикиги', ...]
# [RanobeInfo(id=151431, name='Lycoris Recoil: Ordinary Days', russian='Ликорис Рикоил: Повседневность', ...]
```

Также, если хочется узнать как использовать встроенные хранилища конфигов или хочется создать свой,
Expand Down Expand Up @@ -199,7 +198,7 @@ _(Если необходимо, то можно также получить т
Ознакомиться с ее содержанием можно [здесь](https://github.com/SecondThundeR/shikithon/blob/main/LICENSE)

Проект использует логотип сайта [Shikimori](https://shikimori.org) для логотипа в этом README.md.
Все права принадлежат правообладателям и используются по принципу _fair use_.
Все права принадлежат правообладателям и используются по принципу _fair use_

## Благодарности

Expand Down
Loading

0 comments on commit 8b8f848

Please sign in to comment.