Python script to download WAX transactions

Overview

WAXtax

Python script to download WAX transactions

WAXtax uses the CoinGecko API and the WAX Blockchain History API to download csvs for each account you specify. Depending on the number of transactions you have, this could a significant amount of time to run.

Windows Tutorial
MacOS tutorial pending

Installation:

  • Requires Python 3.8 or higher (although should theoretically run in Python 3.7, but I haven't tested this yet)
  • This project uses Poetry for package management, so you can use Poetry to install all dependencies.

Installing Poetry

In a terminal/command prompt/powershell/etc window:

pip install --user poetry

Installing Dependencies

Inside the WAXTax directory, run

poetry install --no-dev

(--no-dev leaves out the development dependencies.)

Usage:

Setting up configuration

Edit the configuration file to suit your wallets/date range. See config.yaml as an example.
accounts - list of accounts to check
contract - token contract, only supports eosio.token:transfer (WAX Transfers) at the moment
date-range - dates in ISO format and UTC+00 timezone, "YYYY-MM-DDTHH:MM:SS" <- Note the quotation marks
currency - Currency code to convert WAX price to. See the list of supported codes here
export-folder - Name of folder to store exported transactions in
endpoints - API endpoints to try to get transactions from. Caution! Different endpoints may produce different results, based on how up-to-date the API is.

Downloading Transactions

Inside the WAXtax directory, run

poetry run waxtax

Help/Problems

If you encounter any problems, open an issue or ask for help in the SixPM Software Discord

You might also like...
A Python package that can be used to download post and comment data from Reddit.

Reddit Data Collector Reddit Data Collector is a Python package that allows a user to collect post and comment data from Reddit. It is built on top of

Download song lyrics and metadata from Genius.com ๐ŸŽถ๐ŸŽค

LyricsGenius: a Python client for the Genius.com API lyricsgenius provides a simple interface to the song, artist, and lyrics data stored on Genius.co

A simple telegram bot to download from Zee5 links

Zee5 Downloader If you find any bugs, report at @TroJanzSupport My Features: ๐Ÿ‘‰ Upload as file/video from any NON-DRM Zee5 link ๐Ÿ‘‰ Permanent thumbnail

Command-line program to download videos from YouTube.com and other video sites

youtube-dl - download videos from youtube.com or other video platforms INSTALLATION DESCRIPTION OPTIONS CONFIGURATION OUTPUT TEMPLATE FORMAT SELECTION

Command-line program to download image galleries and collections from several image hosting sites

gallery-dl gallery-dl is a command-line program to download image galleries and collections from several image hosting sites (see Supported Sites). It

Download videos from Youtube and other platforms through a Telegram Bot
Download videos from Youtube and other platforms through a Telegram Bot

ytdl-bot Download videos from YouTube and other platforms through a Telegram Bot Usage: https://t.me/benny_ytdlbot Send link from YouTube directly to

Tools to download and aggregate feeds of vaccination clinic location information in the United States.

vaccine-feed-ingest Pipeline for ingesting nationwide feeds of vaccine facilities. Contributing How to Configure your environment (instructions on the

Telegram bot to download almost all from Instagram

Instagram Manager Bot The most advanced Instagram Downloader Bot. Please fork this repository don't import code Made with Python3 (C) @subinps Copyrig

Telegram PHub Bot using ARQ Api and Pyrogram. This Bot can Download and Send PHub HQ videos in Telegram using ARQ API.

Tg_PHub_Bot Telegram PHub Bot using ARQ Api and Pyrogram. This Bot can Download and Send PHub HQ videos in Telegram using ARQ API. OS Support All linu

Comments
  • Simplifying the usage of WAXtax

    Simplifying the usage of WAXtax

    This update removes the attempt at poetry command integration in favour of allowing WAXtax to be called in a more common way via

    python -m poetry run python waxtax

    or

    poetry run python waxtax

    opened by stuckatsixpm 0
  • Add support for more robust transaction pulls

    Add support for more robust transaction pulls

    WAXtax now will pull data from 3 different endpoints to improve accuracy of information. Endpoints are randomly chosen from https://validate.eosnation.io/wax/reports/endpoints.html

    Fixes:

    • closes #3
    opened by stuckatsixpm 0
  • Script blows up if there are no transactions in the date range

    Script blows up if there are no transactions in the date range

    I was running my accounts, and I was getting an error on one. This is the output:

    Using endpoint https://api-wax.eosauthority.com/v2/history/get_actions
    WAX Exporter v0.1.0
    Created by SixPM Software
    
    Retrieved price data for USD
    Checking for transactions between 2021-01-01T00:00:00 and 2021-10-31T23:59:59
    Starting 2f2qk.waa
    Traceback (most recent call last):
      File "/usr/local/Cellar/[email protected]/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 197, in _run_module_as_main
        return _run_code(code, main_globals, None,
      File "/usr/local/Cellar/[email protected]/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
        exec(code, run_globals)
      File "/Users/ak/workspaces/waxtax/src/waxtax/__main__.py", line 181, in <module>
        main()
      File "/Users/ak/workspaces/waxtax/src/waxtax/__main__.py", line 126, in main
        print(f"{len(filtered)} actions found, ending at {filtered[-1]['timestamp']}")
    IndexError: list index out of range
    $
    opened by akrivitzky 0
Releases(v2.0.0)
  • v2.0.0(Feb 4, 2022)

    Hello everyone! This version of WAXtax is incompatible with configuration files from previous versions.

    Changes:

    config.yaml

    • config.yaml no longer uses the endpoints field. WAXtax now automatically selects available endpoints provided by EOSNation's BP report
    • mode and max_retries are now available as settings in config.yaml

    full mode vs fast mode:

    • full mode will use three endpoints as a reference to give you the best chance at capturing as many actions as possible.
    • fast mode is fast, but uses a single endpoint By default, WAXtax now works in full mode

    Exported files

    • ordinal column has been added to the exported data, you can use this in conjunction with the transaction id to check for duplicates

    Planned for future updates:

    • We're investigating obtaining historical pricing data for the following:
    • Support for transactions of WAX tokens such as TLM, FATE, GUILD
    • Support for Atomic Asset transfers
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Oct 10, 2021)

  • v1(Oct 7, 2021)

    Base WAXTax. Command-line version of WAXTax - Runs on Python 3.8+

    WAXtax lets you specify a date range, a list of wallets, and a fiat currency, and then will go and generate CSVs of any WAX Transfers in and out of those accounts across that time period, with one CSV file per account.

    Source code(tar.gz)
    Source code(zip)
Owner
SixPM Software
Freelance Python
SixPM Software
A combination between python-flask, that fetch and send data from league client during champion select thanks to LCU

A combination between python-flask, that fetch data and send from league client during champion select thanks to LCU and compare picked champs to the gamesDataBase that we need to collect using my ot

Anas Hamrouni 1 Jan 19, 2022
Simple screen recorder

Kooha Simple screen recorder Description Kooha is a simple screen recorder built with GTK. It allows you to record your screen and also audio from you

Dave Patrick 1.2k Jan 03, 2023
Make WhatsApp ChatBot and use WhatsApp API to send the WhatsApp messages in python .

Ultramsg.com WhatsApp Bot using WhatsApp API and ultramsg Demo WhatsApp API ChatBot using Ultramsg API with python. Opportunities and tasks: The outpu

Ultramsg 64 Dec 29, 2022
Telegram Vc Video Player Bot

Telegram Video Player Bot Telegram bot project for streaming video on telegram video chat, powered by tgcalls and pyrogram Deploy to Heroku ๐Ÿ‘จโ€๐Ÿ”ง The

Dihan Official 11 Dec 25, 2022
Skyscanner Python SDK

Skyscanner Python SDK Important As of May 1st, 2020, the project is deprecated and no longer maintained. The latest update in v1.1.5 includes changing

Skyscanner 118 Sep 23, 2022
A Discord bot that allows you to rapidly deploy Minecraft servers seamlessly and painlessly from Discord.

Lyra - rapidly and painlessly deploy Minecraft servers from Discord Lyra lets you deploy Minecraft server instances via Docker with control through a

1 Dec 23, 2021
Wordnik Python public library

Python 2.7 client for Wordnik.com API Overview This is a Python 2.7 client for the Wordnik.com v4 API. For more information, see http://developer.word

Wordnik 224 Dec 29, 2022
Translator based on Google API

Yakusu Toshiko Translator based on Google API. Instance of this bot is running as @yakusubot. Features Add a plus to a language's name to show an orig

Arisu W. 2 Sep 21, 2022
GitHub Usage Report

github-analytics from github_analytics import analyze pr_analysis = analyze.PRAnalyzer( "organization/repo", "organization", "team-name",

Shrivu Shankar 1 Oct 26, 2021
A modular Telegram Python bot running on python3 with a sqlalchemy, redis, telethon.

GilbertAnimeBot A modular Telegram Python bot running on python3 with a sqlalchemy, redis, telethon. How to setup/deploy. Read these notes carefully b

Kishore 1 Jan 23, 2022
veez music bot is a telegram music bot project, allow you to play music on voice chat group telegram.

๐ŸŽถ Veez Music Bot Music bot for playing music on telegram voice chat group. Requirements ๐Ÿ“ FFmpeg NodeJS nodesource.com Python 3.7+ PyTgCalls ๐Ÿงช Get

levina 143 Jun 19, 2022
Braintree Python library

Braintree Python library The Braintree Python library provides integration access to the Braintree Gateway. TLS 1.2 required The Payment Card Industry

Braintree 230 Dec 18, 2022
Pack up to 3MB of data into a tweetable PNG polyglot file.

tweetable-polyglot-png Pack up to 3MB of data into a tweetable PNG polyglot file. See it in action here: https://twitter.com/David3141593/status/13719

David Buchanan 2.4k Dec 29, 2022
A powerfull SMS Bomber for Bangladesh . NO limite .Unlimited SMS Spaming

RedBomberBD A powerfull SMS Bomber for Bangladesh . NO limite .Unlimited SMS Spaming Installation Install my-tool on termux by using thoes commands pk

Abdullah Al Redwan 3 Feb 16, 2022
TM1py is a Python package that wraps the TM1 REST API in a simple to use library.

By wrapping the IBM Planning Analytics (TM1) REST API in a concise Python framework, TM1py facilitates Python developments for TM1. Interacting with T

Cubewise CODE 147 Dec 15, 2022
Discord-Bot - Bot using nextcord for beginners

Discord-Bot Bot using nextcord for beginners! Requirements: 1 :- Install nextcord by typing "pip install nextcord" Thats it! You can use this code any

INFINITE_. 3 Jan 10, 2022
Instagram bot that upload images for you which scrape posts from 9gag meme website or other Instagram users , which is 24/7 Automated Runnable.

Autonicgram Automates your Instagram posts by taking images from sites like 9gag or other Instagram accounts and posting it onto your page. Features A

Mastermind 20 Sep 17, 2022
A simple Discord Bot that uses the free CryptoCompare API to display cryptocurrency prices

What is this? This is a simple Discord Bot coded in Python that uses the free CryptoCompare API to display cryptocurrency prices Download Use git to c

Kevin 10 Apr 17, 2022
Telegram forwarder

Telegram Forwarder Quick Start This application using docker, docker-compose to run. So I suppose that you can install these two things. Prepare essen

10 Dec 20, 2022
An instagram bot developed in Python with Selenium that helps you get more Instagram followers.

instabot An instagram bot developed in Python with Selenium that helps you get more Instagram followers. Install Youโ€™ll need to have: Python Selenium

65 Nov 22, 2022