# Ortege ETL
[![Discord](https://img.shields.io/badge/discord-join%20chat-blue.svg)](https://discord.gg/ortege)
Ortege ETL lets you convert blockchain data into convenient formats like CSVs and stream the data into Kafka.
We've merged a few different codebases into a singular codebase to make it easier for developers to use one tool for all their data analytics needs. We'd like to thank all the great work done from these libraries which we've leveraged extensively:
[EthereumETL](https://github.com/blockchain-etl/ethereum-etl)
[BitcoinETL](https://github.com/blockchain-etl/bitcoin-etl)
# Create Wheel
`python setup.py bdist_wheel`
## Quickstart
Install Ortege ETL:
We will eventually setup OrtegeETL through PyPi but for now, please clone the repository locally and run it from the command line.
Currently we support the following chains:
* EVM
* Bitcoin
* Stacks
### EVM
#### Export blocks and transactions
```bash
ortegeetlevm export_blocks_and_transactions --start-block 0 --end-block 500000 \
--blocks-output blocks.csv --transactions-output transactions.csv \
--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c
```
#### Export ERC20 and ERC721 transfers
```bash
ortegeetl evm export_token_transfers --start-block 0 --end-block 500000 \
--provider-uri file://$HOME/Library/Ethereum/geth.ipc --output token_transfers.csv
```
#### Export traces
```bash
ortegeetl evm export_traces --start-block 0 --end-block 500000 \
--provider-uri file://$HOME/Library/Ethereum/parity.ipc --output traces.csv
```
#### Stream blocks, transactions, logs, token_transfers continually to console
```bash
ortegeetl evm stream --start-block 500000 -e block,transaction,log,token_transfer --log-file log.txt \
--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c
```
### Bitcoin
#### Export blocks and transactions
```bash
ortegeetl btc export_blocks_and_transactions --start-block 0 --end-block 500000 \
--provider-uri http://user:pass@localhost:8332 --chain bitcoin \
--blocks-output blocks.json --transactions-output transactions.json
```
#### Stream blockchain data continually to console
```bash
ortegeetl btc stream -p http://user:pass@localhost:8332 --start-block 500000
```
### Stacks
### Soroban
**Coming soon**
Raw data
{
"_id": null,
"home_page": "https://github.com/Ortege-xyz/ortegeETL",
"name": "ortegeetl",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.7.2",
"maintainer_email": null,
"keywords": "blockchain",
"author": "Ortege",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/62/12/ef1b0d5d5d9ff36c80ac712d1124683b12debe5ec756b54c0fb4df99d5c4/ortegeetl-2.0.3.tar.gz",
"platform": null,
"description": "# Ortege ETL\r\n\r\n[![Discord](https://img.shields.io/badge/discord-join%20chat-blue.svg)](https://discord.gg/ortege)\r\n\r\nOrtege ETL lets you convert blockchain data into convenient formats like CSVs and stream the data into Kafka.\r\n\r\nWe've merged a few different codebases into a singular codebase to make it easier for developers to use one tool for all their data analytics needs. We'd like to thank all the great work done from these libraries which we've leveraged extensively:\r\n[EthereumETL](https://github.com/blockchain-etl/ethereum-etl)\r\n[BitcoinETL](https://github.com/blockchain-etl/bitcoin-etl)\r\n\r\n# Create Wheel\r\n`python setup.py bdist_wheel`\r\n\r\n## Quickstart\r\n\r\nInstall Ortege ETL:\r\n\r\nWe will eventually setup OrtegeETL through PyPi but for now, please clone the repository locally and run it from the command line. \r\n\r\nCurrently we support the following chains:\r\n* EVM\r\n* Bitcoin\r\n* Stacks\r\n\r\n### EVM\r\n#### Export blocks and transactions \r\n\r\n```bash\r\nortegeetlevm export_blocks_and_transactions --start-block 0 --end-block 500000 \\\r\n--blocks-output blocks.csv --transactions-output transactions.csv \\\r\n--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c\r\n```\r\n\r\n#### Export ERC20 and ERC721 transfers \r\n\r\n```bash\r\nortegeetl evm export_token_transfers --start-block 0 --end-block 500000 \\\r\n--provider-uri file://$HOME/Library/Ethereum/geth.ipc --output token_transfers.csv\r\n```\r\n\r\n#### Export traces \r\n\r\n```bash\r\nortegeetl evm export_traces --start-block 0 --end-block 500000 \\\r\n--provider-uri file://$HOME/Library/Ethereum/parity.ipc --output traces.csv\r\n```\r\n\r\n#### Stream blocks, transactions, logs, token_transfers continually to console \r\n\r\n```bash\r\nortegeetl evm stream --start-block 500000 -e block,transaction,log,token_transfer --log-file log.txt \\\r\n--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c\r\n```\r\n### Bitcoin\r\n#### Export blocks and transactions \r\n\r\n```bash\r\nortegeetl btc export_blocks_and_transactions --start-block 0 --end-block 500000 \\\r\n--provider-uri http://user:pass@localhost:8332 --chain bitcoin \\\r\n --blocks-output blocks.json --transactions-output transactions.json\r\n```\r\n\r\n#### Stream blockchain data continually to console\r\n\r\n```bash\r\nortegeetl btc stream -p http://user:pass@localhost:8332 --start-block 500000\r\n```\r\n\r\n### Stacks\r\n\r\n### Soroban\r\n**Coming soon**\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Tools for exporting Blockchain data to CSV or JSON",
"version": "2.0.3",
"project_urls": {
"Bug Reports": "https://github.com/Ortege-xyz/ortegeETL/issues",
"Homepage": "https://github.com/Ortege-xyz/ortegeETL",
"Source": "https://github.com/Ortege-xyz/ortegeETL"
},
"split_keywords": [
"blockchain"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "73889048b9c19b87f2a18c4a0d3081b954ed3ce4bcda90b1440f9cdbf77b9fe0",
"md5": "581bb885306f7ff156712da911e34d39",
"sha256": "cc00c1414c732b5091eca05da302f67fb41d39e92690f89ad604ce4fa0a20d5f"
},
"downloads": -1,
"filename": "ortegeetl-2.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "581bb885306f7ff156712da911e34d39",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.7.2",
"size": 554235,
"upload_time": "2024-11-27T00:43:49",
"upload_time_iso_8601": "2024-11-27T00:43:49.517654Z",
"url": "https://files.pythonhosted.org/packages/73/88/9048b9c19b87f2a18c4a0d3081b954ed3ce4bcda90b1440f9cdbf77b9fe0/ortegeetl-2.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6212ef1b0d5d5d9ff36c80ac712d1124683b12debe5ec756b54c0fb4df99d5c4",
"md5": "f2db4b3bd6683d5b7da2022e38254bd0",
"sha256": "5ae47003bb1487bb2ffb0b324acb214c894ed518cd943b9b520e6fd357f15cd0"
},
"downloads": -1,
"filename": "ortegeetl-2.0.3.tar.gz",
"has_sig": false,
"md5_digest": "f2db4b3bd6683d5b7da2022e38254bd0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.7.2",
"size": 377161,
"upload_time": "2024-11-27T00:43:51",
"upload_time_iso_8601": "2024-11-27T00:43:51.649643Z",
"url": "https://files.pythonhosted.org/packages/62/12/ef1b0d5d5d9ff36c80ac712d1124683b12debe5ec756b54c0fb4df99d5c4/ortegeetl-2.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-27 00:43:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Ortege-xyz",
"github_project": "ortegeETL",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "web3",
"specs": [
[
">=",
"5.29"
],
[
"<",
"6"
]
]
},
{
"name": "eth-utils",
"specs": [
[
"==",
"1.10"
]
]
},
{
"name": "eth-abi",
"specs": [
[
">=",
"2.2.0"
],
[
"<",
"3.0.0"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
">=",
"2.8.0"
],
[
"<",
"3"
]
]
},
{
"name": "click",
"specs": [
[
">=",
"8.0.4"
],
[
"<",
"9"
]
]
},
{
"name": "ethereum-dasm",
"specs": [
[
"==",
"0.1.4"
]
]
},
{
"name": "urllib3",
"specs": [
[
"<",
"2"
]
]
},
{
"name": "base58",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "stellar-sdk",
"specs": [
[
"==",
"9.2.0"
]
]
}
],
"lcname": "ortegeetl"
}