web3-flashbots.py
项目描述
此库通过将flashbots注入到Web3.py实例中作为新模块,允许直接向矿工提交“事务包”。这是通过创建一个中间件来完成的,该中间件捕获对eth_sendBundle
和eth_callBundle
的调用,并将它们发送到您指定的RPC端点,对应于mev-geth
。
为了应用正确的头信息,我们使用flashbot
方法,该方法在POST请求中注入正确的头信息。
快速入门
from eth_account.signers.local import LocalAccount
from web3 import Web3, HTTPProvider
from flashbots import flashbot
from eth_account.account import Account
import os
ETH_ACCOUNT_SIGNATURE: LocalAccount = Account.from_key(os.environ.get("ETH_SIGNATURE_KEY"))
w3 = Web3(HTTPProvider("http://localhost:8545"))
flashbot(w3, ETH_ACCOUNT_SIGNATURE)
现在w3.flashbots.sendBundle
方法应该可用。查看examples/simple.py以获取使用示例。
测试网
要使用以太坊测试网,请将适当的测试网中继RPC添加到flashbot
函数参数中。
flashbot(w3, ETH_ACCOUNT_SIGNATURE, "https://relay-holesky.flashbots.net")
请参阅flashbots文档以获取最新的URL。
开发和测试
安装poetry
poetry将自动修复您的venv和所有所需的包。
poetry install
提示:PyCharm有一个poetry插件
简单的测试网示例
请参阅examples/simple.py以获取环境变量定义。
poetry shell
ETH_SENDER_KEY=<sender_private_key> \nPROVIDER_URL=https://eth-holesky.alchemyapi.io/v2/<alchemy_key> \nETH_SIGNER_KEY=<signer_private_key> \npython examples/simple.py
代码检查
建议使用默认规则运行black进行代码检查
sudo pip install black # Black should be installed with a global entrypoint
black .
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
flashbots-2.0.0.tar.gz (11.1 kB 查看哈希值)
构建分发
flashbots-2.0.0-py3-none-any.whl (11.4 kB 查看哈希值)
关闭
flashbots-2.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dc4a28905a545ea1e69a1411e63419b72c2b8bacd2d385cce75a4a9921d65635 |
|
MD5 | bf2db2a9d3cf9e2e8d0fbaa0ff29baf0 |
|
BLAKE2b-256 | 2626581de75c06b28fb2072e8efcdbcca0d01c63fab8072d4b4497b5cba9e0e3 |
关闭
flashbots-2.0.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 64f09f6fbb1ba97d8d0ca307bcc204f734a24d01ea59ce94037510d539c737b3 |
|
MD5 | 2c213a676758edabde9ee5ba8ff9c9e2 |
|
BLAKE2b-256 | 996b9c309eb0b43ef0f773ba5561a7e1bb33960a926ee8cfbd2cb5667c9b9a9e |