tap-lastfm is a Singer tap for LastFM.
Built with the Meltano Tap SDK for Singer Taps.
pipx install git+https://github.com/rabidaudio/tap-lastfm.git@v0.1.1api_key(required): The API key to authenticate against the API service.usernames(required): A list of usernames to fetch data for.start_date: The earliest record date to sync. Defaults to all data.step_days: The number of days to scan through before emitting state. Defaults to 30.
A full list of supported settings and capabilities for this tap is available by running:
tap-lastfm --aboutLast.fm requires an API key even to read public data. See directions on how to request an API key here.. At this time, the tap does not access any non-public data, so signatures and session keys are not required.
You can easily run tap-lastfm by itself or in a pipeline using Meltano.
tap-lastfm --version
tap-lastfm --help
tap-lastfm --config CONFIG --discover > ./catalog.json- Last.FM API docs: https://www.last.fm/api
pipx install poetry
poetry installCreate tests within the tap_lastfm/tests subfolder and
then run:
tox -e pytestYou can also test the tap-lastfm CLI interface directly using poetry run:
poetry run tap-lastfm --helpTesting with Meltano
Note: This tap will work in any Singer environment and does not require Meltano. Examples here are for convenience and to streamline end-to-end orchestration scenarios.
Your project comes with a custom meltano.yml project file already created. Open the meltano.yml and follow any "TODO" items listed in
the file.
Next, install Meltano (if you haven't already) and any needed plugins:
# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-lastfm
meltano installNow you can test and orchestrate using Meltano:
# Test invocation:
meltano invoke tap-lastfm --version
# OR run a test `elt` pipeline:
meltano elt tap-lastfm target-jsonlSee the dev guide for more instructions on how to use the SDK to develop your own taps and targets.