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
GitPython is a python library used to interact with Git repositories.

Gitoxide: A peek into the future… I started working on GitPython in 2009, back in the days when Python was 'my thing' and I had great plans with it. O

3.8k Jan 03, 2023
A script to automatically update bot status at GitHub as well as in Telegram channel.

Support BotStatus ~ A simple & short repository to show your bot's status in your GitHub README.md file as well as in you channel. ⚠️ This repo should

Jainam Oswal 55 Dec 13, 2022
This repository contains modules that extend / modify parts of Odoo ERP

Odoo Custom Addons This repository contains addons that extend / modify parts of Odoo ERP. Addons list account_cancel_permission Only shows the button

Daniel Luque 3 Dec 28, 2022
Utilizing the freqtrade high-frequency cryptocurrency trading framework to build and optimize trading strategies. The bot runs nonstop on a Rasberry Pi.

Freqtrade Strategy Repository Please test all scripts and dry run them before using them in live mode Contact me on discord if you have any questions!

Michael Fourie 90 Jan 01, 2023
A very simple Salesforce.com REST API client for Python

Simple Salesforce Simple Salesforce is a basic Salesforce.com REST API client built for Python 3.5, 3.6, 3.7 and 3.8. The goal is to provide a very lo

simple salesforce 1.4k Dec 29, 2022
A Serverless Application Model stack that persists the $XRP price to the XRPL every minute as a TrustLine. There are no servers, it is effectively a "smart contract" in Python for the XRPL.

xrpl-price-persist-oracle-sam This is a XRPL Oracle that publishes external data into the XRPL. This Oracle was inspired by XRPL-Labs/XRPL-Persist-Pri

Joseph Chiocchi 11 Dec 17, 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
A Bot to get RealTime Tweets to a Specific Chats from Desired Persons on Twitter to Telegram Chat.

TgTwitterStreamer A Bot to get RealTime Tweets to a Specific Chats from Desired Persons on Twitter to Telegram Chat. For Getting ENV's Refer this Link

Anonymous 69 Dec 20, 2022
Python script to replace BTC adresses in the clipboard with similar looking ones, whose private key can be retrieved by a netcat listener or similar.

BTCStealer Python script to replace BTC adresses in the clipboard with similar looking ones, whose private key can be retrieved by a netcat listener o

Some Person 6 Jun 07, 2022
Wetterdienst - Open weather data for humans

We are a group of like-minded people trying to make access to weather data in Python feel like a warm summer breeze, similar to other projects like rdwd for the R language, which originally drew our

226 Jan 04, 2023
Discord Crypto Payment Cards Selfbot

A Discord selfbot that serves the purpose of displaying text and QR versions of your BTC, LTC & ETH payment information for easy and simple commercial or personal transactions.

2 Apr 12, 2022
Diablo II Resurrected Diablo Clone Running Room Mgr

d2rdc Diablo II Resurrected Diablo Clone Running Room Mgr Install Dependencies pip install fastapi pip install uvicorn Running uvicorn init:app INFO:

1 Dec 03, 2021
Discord bot for playing Werewolf game on League of Legends.

LoLWolf LoL人狼をプレイするときのDiscord用botです。 (Discord bot for playing Werewolf game on League of Legends.) 以下のボタンを押してbotをあなたのDiscordに招待することで誰でも簡単に使用することができます。

Hatsuka 4 Oct 18, 2021
Python API wrapper around Trello's API

A wrapper around the Trello API written in Python. Each Trello object is represented by a corresponding Python object. The attributes of these objects

Richard Kolkovich 904 Jan 02, 2023
A youtube search telegram bot.

YouTube-Search-Bot A youtube search telegram bot. Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github

Fayas Noushad 22 Nov 12, 2022
Host your Python Discord Bot 24/7 for free. POC

🐉 Pandore 🐉 The easiest and fastest way to host your Python3 Discord Bot 24/7 for free! 📚 Documentation 📚 If you encounter any problem while using

Billy 73 Jan 02, 2023
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)

OpenAPI Generator Master (5.3.1): 5.4.x (5.4.x): 6.0.x (6.0.x): ⭐ ⭐ ⭐ If you would like to contribute, please refer to guidelines and a list of open t

OpenAPI Tools 14.8k Jan 04, 2023
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
Discord bot that plays cricket with the user

CricBot Table of content Commands Installation Game rules License Commands S.No Command Use 1. cric Open the home window. This command is not necessa

Raveesh Yadav 1 Nov 19, 2021