An unofficial MyAnimeList API for Python 3.
Currently, the API does not feature any kind of rate limiting. Use the API in moderation and rate limit your queries (0.5 seconds is sufficient to my knowledge). This API uses cached webpage data to increase efficiency and save bandwidth. If you want to refresh your data, you must create a new object (a refresh option will most likely come in the future; no plans for dynamically updating info).
The API is currently incomplete. More features are to come.
If there are any features that you wish to be supported, please raise an issue. Any feedback is also appreciated.
To install the library: pip install mal-api
To import the library: from mal import *
To call the API, you need to create an object.
from mal import Anime
anime = Anime(1) # Cowboy Bebop
print(anime.score) # prints 8.82
anime.reload() # reload object
print(anime.score) # prints 8.81
from mal import AnimeSearch
search = AnimeSearch("cowboy bebop") # Search for "cowboy bebop"
print(search.results[0].title) # Get title of first result
To configure timeout (default timeout is 5 seconds):
from mal import Anime
from mal import config
config.TIMEOUT = 1 # Import level config
anime = Anime(1, timeout=1) # Object level config
List of properties currently supported:
Anime(mal_id)
Anime.mal_id
Anime.title
Anime.title_english
Anime.title_japanese
Anime.title_synonyms
Anime.url
Anime.image_url
Anime.type
Anime.episodes
Anime.status
Anime.aired
Anime.premiered
Anime.broadcast
Anime.producers
Anime.licensors
Anime.studios
Anime.source
Anime.genres
Anime.duration
Anime.rating
Anime.score
Anime.scored_by
Anime.rank
Anime.popularity
Anime.members
Anime.favorites
Anime.synopsis
Anime.background
Anime.related_anime
Anime.opening_themes
Anime.ending_themes
Manga(mal_id)
Manga.mal_id
Manga.title
Manga.title_english
Manga.title_japanese
Manga.title_synonyms
Manga.url
Manga.image_url
Manga.type
Manga.status
Manga.genres
Manga.score
Manga.scored_by
Manga.rank
Manga.popularity
Manga.members
Manga.favorites
Manga.synopsis
Manga.background
Manga.volumes
Manga.chapters
Manga.published
Manga.authors
Manga.related_manga
AnimeSearch(query)
returns an array of results via .results
AnimeSearchResult.mal_id
AnimeSearchResult.url
AnimeSearchResult.image_url
AnimeSearchResult.title
AnimeSearchResult.synopsis
AnimeSearchResult.type
AnimeSearchResult.episodes
AnimeSearchResult.score
MangaSearch(query)
returns an array of results via .results
MangaSearchResult.mal_id
MangaSearchResult.url
MangaSearchResult.image_url
MangaSearchResult.title
MangaSearchResult.synopsis
MangaSearchResult.type
MangaSearchResult.volumes
MangaSearchResult.score