Package: mal
Descriptionmalis a command-line client forMyAnimeList, via theofficial
API.One of the major design goals of this project is to avoid the use of
web-scraping, which means it should work indefinitely. Other projects
that scrape the website tend to break whenever MyAnimeList has an
update, rarely ever recovering from the needed maintenance as a result.Development is currently in alpha. New ideas are welcome! But please
checkCONTRIBUTING.mdbefore you submit that pull
request.This project is an unofficial fork ofpushrax/mal, which seems to have
fallen out of maintenance.FeaturesSearch your anime list.Fetch your anime list.List animes by their status (e.g.watching).Increment or decrement episode watch count.Add anime to yourPlan To Watchlist.Edit anime metadata (currentlytags,statusandscore)
using your favorite text editor.Print your MAL stats! Just like you do on MyAnimeList.More features are currently being developed!If you have a suggestion for a new feature, a bug to report or something
else, you can submit anissue.Please note that as this project is still in alpha development, pretty
much everything is subject to change.TL;DR | DemosMain UsageListing Animes By StatusRequirementsPython 3.4+setuptools(For
installing and developing)requestsappdirsdecoratingargparse(Merged into stdlib since version 3.2)Seerequirements.txtfor detailed version
information.InstallationPrefaceEnsure that you are usingPython 3before attempting to install.It’s common for systems to have both Python 2 and 3, so if necessary,
usepip3orpython3-mpip.If your system has bothpython2andpython3, replace all
instances ofpythonandpipwithpython3andpip3(orpython3-mpip).Install viapipFrom the command line, run:$ pip install --user malThis will install the latest stable build ofmalfrom thePyPirepository.Manual InstallationIf you want the absolute latest, bleeding-edge version, you’ll have to
install manually.Clone this project and runpip:$ git clone https://github.com/ryukinix/mal
$ cd mal
$ sudo pip install --user .Note: If installing in avirtualenv, thesudois not necessary.It’s also possible to install with the makefile (sudo make install)
and the setup script (sudo python3 ./setup.py install), but we
strongly recommendpip, as it tracks dependencies, and can
uninstall. Itisa package manager, after all.Finally, if you want to update after having already installed, you can
do this:$ git pull origin master
$ sudo pip install --user .On Arch LinuxThis project has been packaged and uploaded to the AUR aspython-mal-gitin case you’re using Arch Linux or a similar distro (like Manjaro).TroubleshootingIf you justcan’tgetmalto run because it’s crashing upon
startup, make sure that everything is usingpython3$ head -1 $(which mal)
#!/usr/bin/python
$ sudo ed $(which mal) <<< $'1s/python$/python3\nwq'
28
#!/usr/bin/python3
29
$ head -1 $(which mal)
#!/usr/bin/python3You might have to go through a few files to get it to work, but usually,
editing the launcher is enough. Failing that, delete the launcher,
re-clone the repo, and try again in avirtualenv. If it works there,
be careful to follow the above steps and make sure you’re using python3
for everything.UsageAuthenticatingFor some reason, the MAL API requires a username and password for most
actions… including searching the main database. Thus,malneeds your
MAL login to be useful. To prevent this from being a headache,malstores your credentials in your OS’s default config path (e.g.~/.config/mal/myanimelist.inifor Linux). Your username and password
are stored unencrypted inplain textin that file. If you haven’t
already authenticated (mal login), the program will ask for your
credentials when needed.Currently, there is anopen
issuehoping to resolve
the whole “plain text password” kerfuffle.The format ofmyanimelist.iniis as follows:[mal]username=your_usernamepassword=your_passwordUsing The InterfaceWhenmalis executed without any arguments, a help message is
displayed:$ mal
usage: mal [-h] [-v]
           {search,filter,increase,inc,decrease,dec,login,list,config,drop,stats,add,edit}
           ...

MyAnimeList command line client.

positional arguments:
  {search,filter,increase,inc,decrease,dec,login,list,config,drop,stats,add,edit}
                        commands
    search              search an anime
    filter              find anime in users list
    increase (inc)      increase anime's watched episodes by one
    decrease (dec)      decrease anime's watched episodes by one
    login               save login credentials
    list                list animes
    config              Print current config file and its path
    drop                Put a selected anime on drop list
    stats               Show anime watch stats
    add                 add an anime to the list
    edit                edit entry

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show the version of malYou can also use the-hor--helpoptions withmalor any of
its subcommands to see specific help messages.$ mal list -h
usage: mal list [-h] [--extend] [--user USER] [section]

positional arguments:
  section      section to display, can be one of: [all, watching, completed,
               on hold, dropped, plan to watch, rewatching] (default: all)

optional arguments:
  -h, --help   show this help message and exit
  --extend     display extra info such as start/finish dates and tags
  --user USER  choose which users list to showContributingSeeCONTRIBUTING.mdLicenseGPLv3