forked from czbag/base
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
118 lines (92 loc) · 3.78 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
import random
import sys
import questionary
from loguru import logger
from questionary import Choice
from config import ACCOUNTS
from settings import RANDOM_WALLET, SLEEP_TO, SLEEP_FROM, QUANTITY_RUN_ACCOUNTS
from utils.helpers import get_run_accounts, update_run_accounts
from modules_settings import *
def get_module():
result = questionary.select(
"Select a method to get started",
choices=[
Choice("1) Make bridge to Base", bridge_base),
Choice("2) Make bridge on Orbiter", bridge_orbiter),
Choice("3) Wrap ETH", wrap_eth),
Choice("4) Unwrap ETH", unwrap_eth),
Choice("5) Swap on Uniswap", swap_uniswap),
Choice("6) Swap on Pancake", swap_pancake),
Choice("7) Swap on WooFi", swap_woofi),
Choice("8) Swap on BaseSwap", swap_baseswap),
Choice("9) Swap on AlienSwap", swap_alienswap),
Choice("10) Swap on Maverick", swap_maverick),
Choice("11) Swap on Odos", swap_odos),
Choice("12) Swap on 1inch", swap_inch),
Choice("13) Swap on OpenOcean", swap_openocean),
Choice("14) Swap on XYSwap", swap_xyswap),
Choice("15) Bungee Refuel", bungee_refuel),
Choice("16) Deposit Aave", deposit_aave),
Choice("17) Withdraw Aave", withdraw_aave),
Choice("18) Mint NFT on MintFun", mint_mintfun),
Choice("19) Mint and Bridge Zerius NFT", mint_zerius),
Choice("20) Send message L2Telegraph", send_message),
Choice("21) Mint and bridge NFT L2Telegraph", bridge_nft),
Choice("22) Create portfolio on Ray", create_portfolio),
Choice("23) Create gnosis safe", create_safe),
Choice("24) Swap tokens to ETH", swap_tokens),
Choice("25) Use Multiswap", swap_multiswap),
Choice("26) Use custom routes", custom_routes),
Choice("27) Check transaction count", "tx_checker"),
Choice("28) Exit", "exit"),
],
qmark="⚙️ ",
pointer="✅ "
).ask()
if result == "exit":
print("\n❤️ Subscribe to me – https://t.me/sybilwave\n")
print("🤑 Donate me: 0x00000b0ddce0bfda4531542ad1f2f5fad7b9cde9")
sys.exit()
return result
def get_wallets():
wallets = [
{
"id": _id,
"key": key,
} for _id, key in enumerate(ACCOUNTS, start=1)
]
return wallets
async def run_module(module, account_id, key, sleep_time, start_id):
if start_id != 1:
await asyncio.sleep(sleep_time)
while True:
run_accounts = get_run_accounts()
if len(run_accounts["accounts"]) < QUANTITY_RUN_ACCOUNTS:
update_run_accounts(account_id, "add")
await module(account_id, key)
update_run_accounts(account_id, "remove")
break
else:
logger.info(f'Current run accounts: {len(run_accounts["accounts"])}')
await asyncio.sleep(60)
async def main(module):
wallets = get_wallets()
tasks = []
if RANDOM_WALLET:
random.shuffle(wallets)
sleep_time = random.randint(SLEEP_FROM, SLEEP_TO)
for _, account in enumerate(wallets, start=1):
tasks.append(asyncio.create_task(
run_module(module, account["id"], account["key"], sleep_time, _)
))
sleep_time += random.randint(SLEEP_FROM, SLEEP_TO)
await asyncio.gather(*tasks)
if __name__ == '__main__':
print("❤️ Subscribe to me – https://t.me/sybilwave\n")
module = get_module()
if module == "tx_checker":
get_tx_count()
else:
asyncio.run(main(module))
print("\n❤️ Subscribe to me – https://t.me/sybilwave\n")
print("🤑 Donate me: 0x00000b0ddce0bfda4531542ad1f2f5fad7b9cde9")