Metadata-Version: 2.1
Name: lastfmpy
Version: 1.1
Summary: An API Wrapper for Last.FM
Home-page: https://github.com/myerfire/lastfm.py
Author: Myer
Author-email: realmyerfire@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown

# lastfmpy - Last.FM API wrapper written in Python

[![widget](https://inv.wtf/widget/myerfire)](https://myer.wtf/discord)

Maintained by [Myer (also known as myerfire, MyerFire)](https://github.com/myerfire)

- [YouTube](https://myer.wtf/youtube)
- [Twitter](https://myer.wtf/twitter)
- myer#0001 on Discord

This library is an async wrapper for the [last.fm API](https://last.fm/api).

## Features

- Currently, any API methods that do not require the authentication process are supported.

## Installation

`lastfmpy` is available from the official pYpI package index.

`python -m pip install -U lastfmpy`

## Documentation

- There are relevant docstrings on the functions of the main wrapper class.
- Object attribute documentation may (?) be worked on but the code
  in [objects.py](https://github.com/MyerFire/lastfmpy/blob/master/lastfmpy/objects.py) is easily readable.
- ****There is no API method for a user's currently playing song. The way to get the currently playing song of a user is
  to request recent tracks and check whether the first index of the list has the attribute `playing` set to true.

## Quick Start

```python
from lastfmpy import LastFM
import asyncio

API_KEY = "hahagetbaited"
# if it isn't obvious enough, replace this string 
# with your API key obtained by going to https://last.fm/api/applications and creating an application

async def main():
    lastfm = await LastFM(API_KEY)
    recent = await lastfm.user.get_recent_tracks(user="myerfire")
    print(f"{recent.items[0].name}")

if __name__ == "__main__":
    asyncio.get_event_loop().run_until_complete(main())
```

