Access Ethereum Blockchain Data: A Comparative Tutorial of Web3.py, Ethereum2-ETL, Etherscan-python, and Bigquery
This article provides a tutorial on how to access Ethereum blockchain data through four tools Web3.py, Ethereum2-ETL, Etherscan-python, and Bigquery.
Web3.py is a Python library that allows interaction with Ethereum, typically used in decentralized apps. It offers functionality for sending transactions, working with smart contracts, retrieving block information and more. The library's API was initially based on Web3.js (Javascript), but has been adapted to better suit the needs of Python developers.
Ethereum2-ETL enables the transformation of blockchain information into user-friendly formats, such as CSV and relational databases. With over 700 likes on GitHub, Ethereum-ETL is the most popular open-source project for Ethereum data. Ethereum2-ETL is a fork of Ethereum-ETL that adds support for Ethereum2-ETL data.
etherscan-python
is a comprehensive Python API for Etherscan.io. It offers both the standard and pro endpoints for the mainnet of the Ethereum blockchain as well as that of the Kovan, Rinkeby, and Ropsten testnets. The API can be found on PyPI and is powered by the Etherscan.io APIs.
Bitquery is a GraphQL API that provides a flexible and efficient way to access and analyze blockchain data. By using GraphQL, Bitquery enables users to query only the data they need, rather than receiving a large amount of unneeded data. This results in faster, more streamlined access to blockchain data, and improved performance overall.