Getting Started#

Load a small subset of blockchain data and verify that data afterwards. If you wish to load the entire blockchain, you would replace the block height with the current block height as available via the evm block-number command.

  1. Install block-crawler:

    python -m pip install block-crawler
    
  2. Setup AWS credentials for Boto3

  3. Setup the DynamoDB schema.

    Warning

    The following command will reset any previously loaded data!

    block-crawler dev reset-db
    
  4. Load the blockchain data from block 5,600,00 to 6,000,000. Nothing before 5,600,000 will have NFT data.

    block-crawler nft --blockchain ethereum-mainnet \
    --evm-rpc-nodes  wss://some-archive-node-uri 1 \
    load --increment-data-version=True 5_600_000 5_600_000 6_000_000
    

    Note

    You may encounter errors while running. If so, resolve the issue and run the load command again with the starting block at the block after the last known loaded block based on the logs and increment-data-version set to False. increment-data-version should only be set to True on the first run of the loader.

# Verify the God’s Unchained collection up to block 6,000,000. Gods Unchained should

have been added in the load.

block-crawler nft --blockchain ethereum-mainnet \
--evm-rpc-nodes  wss://some-archive-node-uri 1 \
verify 0x6ebeaf8e8e946f0716e6533a6f2cefc83f60e8ab 6_000_000
  1. Crawl the blocks from the block 6,000,001 to 6,100,000.

    block-crawler nft --blockchain ethereum-mainnet \
    --evm-rpc-nodes  wss://some-archive-node-uri 1 \
    crawl 6_000_001 6_100_000
    

    Note

    Depending on how many blocks you need to crawl, you may need to run the command multiple times. You don’t want to start tailing until you are within a few hundred blocks of the current block height.

  2. Verify the God’s Unchained collection up to block 6,100,000. The contract/tokens should have been updated in the crawl.

    block-crawler nft --blockchain ethereum-mainnet \
    --evm-rpc-nodes  wss://some-archive-node-uri 1 \
        verify 0x6ebeaf8e8e946f0716e6533a6f2cefc83f60e8ab 6_100_000
    
  3. Verify the Hyperloot collection up to block 6,100,000. It should have been added in the crawl.

    block-crawler nft --blockchain ethereum-mainnet \
    --evm-rpc-nodes  wss://some-archive-node-uri 1 \
    verify 0xf766b3e7073f5a6483e27de20ea6f59b30b28f87 6_100_000
    
  4. Seed the database with the last block processed by crawl.

    block-crawler nft seed 6_100_000
    
  5. Start the tailer to keep up to date with the latest blocks.

    block-crawler nft tail
    

More detailed information regarding these commands can be found in the User Guide.