All Projects → ccubed → Pymoe

ccubed / Pymoe

Licence: mit
Welcome to PyMoe, the only python lib you'll ever need if you need the animu/mangu on the python platform.

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Pymoe

Shukofukurou
Native AniList, Kitsu, and MyAnimeList Tracker for macOS written in Objective-C
Stars: ✭ 39 (-51.85%)
Mutual labels:  anime
Danbooru
A taggable image board written in Rails 6.
Stars: ✭ 1,077 (+1229.63%)
Mutual labels:  anime
Shokodesktop
Repository for Shoko Desktop
Stars: ✭ 71 (-12.35%)
Mutual labels:  anime
Animeflv
App no oficial de Animeflv
Stars: ✭ 44 (-45.68%)
Mutual labels:  anime
Enterprisealrobot
An anime themed telegram group management bot
Stars: ✭ 49 (-39.51%)
Mutual labels:  anime
One Punch Fitness
A "One Punch Man"-inspired workout app!
Stars: ✭ 64 (-20.99%)
Mutual labels:  anime
Automail
An enhancement collection for anilist.co
Stars: ✭ 34 (-58.02%)
Mutual labels:  anime
Hakuneko
Manga & Anime Downloader for Linux, Windows & MacOS
Stars: ✭ 1,203 (+1385.19%)
Mutual labels:  anime
Animoji
Describe your favorite anime with emoji ✨
Stars: ✭ 54 (-33.33%)
Mutual labels:  anime
Doki Theme Vscode
Code with your waifu! Here are a bunch of themes for VS-Code. Choose a girl from various anime series, manga, and visual novels such as: Re:Zero, KillLaKill and Doki-Doki Literature Club.
Stars: ✭ 67 (-17.28%)
Mutual labels:  anime
Moelist
Another unofficial Android MAL client
Stars: ✭ 45 (-44.44%)
Mutual labels:  anime
Documentation
Online documentation and tracking tools for Naninovel — writer-friendly visual novel engine
Stars: ✭ 48 (-40.74%)
Mutual labels:  anime
Anime Downloader
A simple but powerful anime downloader and streamer.
Stars: ✭ 1,155 (+1325.93%)
Mutual labels:  anime
Jetbrains Compose Anime Demo
A Jetbrains Compose desktop app to get info of your favorite animes
Stars: ✭ 41 (-49.38%)
Mutual labels:  anime
Pakku.js
拯救B站的弹幕体验!
Stars: ✭ 1,182 (+1359.26%)
Mutual labels:  anime
Progress Bot
High-tech weaponized moe progress delivery bot for IRC, Discord, and web
Stars: ✭ 38 (-53.09%)
Mutual labels:  anime
Anime gan
GAN models with Anime.
Stars: ✭ 56 (-30.86%)
Mutual labels:  anime
Pixivformuzei3
Best Pixiv plugin for Muzei 3
Stars: ✭ 81 (+0%)
Mutual labels:  anime
Karmabot
🤖 A Multipurpose Discord Bot with a Music System & Utility commands used by 160K+ users!
Stars: ✭ 73 (-9.88%)
Mutual labels:  anime
Conditional Animegan
Conditional GAN for Anime face generation.
Stars: ✭ 70 (-13.58%)
Mutual labels:  anime

Documentation Status Build Status

PyMoe

Welcome to PyMoe, the only python lib you'll ever need if you need the animu/mangu on the python platform.

1.0

This brings us to 1.0. A stable release for Pymoe. It supports the majority of my end goal websites and it has some good interfaces. This is a breaking change, thus the major bump. I cannot stress enough that you should not update unless you have taken the time to read through and note the differences. There are several.

1.0.4

This fixes anilist. If you don't have this, anilist won't work.

Kitsu

Kitsu is the new Hummingbird if you're wondering where Hummingbird went. To create an instance do:

from Pymoe import Kitsu
instance = Kitsu(client_id, client_secret)

You can get the client_id and client_secret off the forums. There's only one. You have six interfaces: anime, manga, drama, auth, user, library

instance.anime.get(id)  # Search anime by ID
instance.anime.search(term)  # Search anime by term
instance.anime.streaming_links(id) # get streaming-links by ID
instance.manga.get(id)  # Search manga by ID
instance.manga.search(term)  # Search manga by term
instance.drama.get(id)  # Search drama by ID
instance.drama.search(term)  # Search drama by term
instance.auth.authenticate(username, password)  # Authenticate through oauth
instance.user.search(term)  # Search for users by name
instance.user.get(id)  # Search for user by ID
instance.user.update(id, dictionary, token)  # Update a user's attributes
instance.user.create(dictionary)  # Create a new user. I haven't tested this. Let me know how it works.
instance.library.get(id)  # Get a user's library entries (lol, see source notes)

Now supports mappings thanks to Luna

instance.mappings.get("myanimelist/anime", 31608) # return the anime object for Teekyuu 4 specials

Anidb

Status: Not Started

Anilist

To create an instance do:

from Pymoe import Anilist
instance = Anilist()

From there you can get information from Anilist using their new GraphQL API using the old format. For example, to get data on a known ID.

instance.get.anime(21610) # Return data on Okusama ga Seitokaichou
instance.get.manga(64127) # Return data on Mahouka Koukou no Rettousei
instance.get.staff(121963) # Return data on Keisuke Nishijima (Nisizima)
instance.get.studio(94) # Return data on Telecom Animation Film
instance.get.review(2113, False) # Return review #2113 (A review on Orange) and don't format the review body in HTML
instance.get.review(2113) # Return review #2113 and format the review body in HTML

Searching is also making a return.

instance.search.anime("King") # Anime search results for King.
instance.search.manga("King") # Manga search results for King.
instance.search.character("Kei") # Character search results for Kei.
instance.search.staff("Keisuke") # Staff search results for Keisuke.
instance.search.studio("Ghibli") # Studio search result for Ghibli. (There's only one)

A note about the searching. Each search function now has the signature:

search(term, page = 1, perpage = 3)

Pagination is done automatically in the new API. I take care of that. By default you'll get 3 results per page. If you want more, just change the perpage value. pageInfo is always the first result in the returned data. Pages start at 1 and if you want another page, just replace page with the next number.

Bakatsuki

To create an instance do:

from Pymoe import Bakatsuki
instance = Bakatsuki()

From there you can get information on Bakatsuki's projects.

instance.active()  # Return a tuple containing (title, pageid) of active projects
instance.chapters(title)  # return the chapters for a title
instance.get_text(title)  # return the text of a given page
instance.light_novels(language)  # Get a list of language's light novels
instance.teaser(language)  # Get a list of language's teaser projects
instance.web_novels(language)  # Get a list of language's web novels

Mal - Currently Disabled

NOTE

Documentation remains here in case it's useful later, but for now the public API on My Anime List has been shut down. Per Site Owners, It will not come back up until V2 of the API which has no ETA.

This is only an archive, this does not work

To create an instance.

from Pymoe import Mal
instance = Mal(username, password)  # Since every endpoint requires authentication, username/password isn't optional

This particular branch relies on a ton of abstractions and encapsulations. You should read up on them. However, ultimately, it makes your life as a programmer easier. Anime and Manga share the same 4 functions: search, add, update, delete.

instance.anime.search(term)  # Return a list of Anime objects, sorted by status
instance.anime.search(term).completed # Example of getting completed anime
instance.manga.search(term)  # Return a list of Manga objects
instance.manga.search(term).publishing # Get currently publishing manga
instance.anime.update(Pymoe.Mal.Objects.Anime)  # Update a user's list with the given anime data
instance.manga.delete(Pymoe.Mal.Objects.Manga)  # Delete this manga from the user's list
instance.anime.add(Pymoe.Mal.Objects.Anime)  # Add the anime to the user's list
instance.user(username)  # Return a user object that contains user stats and a full anime, manga list
instance.user(username).anime.days # Return the number of days user has spent on anime
instance.user(username).anime.list.completed
instance.user(username).anime.list.watching
instance.user(username).anime.list.held
instance.user(username).anime.list.dropped
instance.user(username).anime.list.planned
instance.user(username).manga.days # return the number of days user has spent on manga
instance.user(username).manga.list.completed
instance.user(username).manga.list.reading
instance.user(username).manga.list.held
instance.user(username).manga.list.dropped
instance.user(username).manga.list.planned

All these categories

Let me break it down. It uses the same categories as the MAL API, but as a refresher.

Anime Search

Airing, Finished, Unaired, Dropped, Planned

Manga Search

Publishing, Finished, Unpublished, Dropped, Planned

User Anime

Watching, Completed, Held, Dropped, Planned

User Manga

Reading, Completed, Held, Dropped, Planned

VNDB

To create an instance.

from Pymoe import Vndb
instance = Vndb(username, password)  # Username and password are optional, but allow you to login as a user

This allows you access to some of the VNDB database. Currently it's just the querying part.

instance.dbstats()  # Return the list of Database stats as seen on the homepage
instance.get(stype, flags, filters, options)  # Query the DB. You have to read the VNDB API Docs and my Docs for this. No way around it. Their API is complicated.
instance.set(stype, sid, fields) # Modify the DB. See the API docs. This is for VNLists, Wishlists and Votelists.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].