commit 180baf19d036d3be17a0ac3f3b89dbbcecd48009 Author: pupuupup Date: Tue Mar 2 23:25:06 2021 +0700 first commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..94779c8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.env +env +venv/* diff --git a/README.md b/README.md new file mode 100644 index 0000000..fca9f50 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# dumplink \ No newline at end of file diff --git a/main.py b/main.py new file mode 100644 index 0000000..981780c --- /dev/null +++ b/main.py @@ -0,0 +1,120 @@ +import requests +import telegram +import time +import os +import pause, datetime +from threading import Thread + +bot = telegram.Bot(token=os.environ["TELEGRAM_API_KEY"]) +chatid = os.environ["TELEGRAM_CHAT_ID"] +apikey = os.environ["ETHERSCAN_API_KEY"] +chainlink = '0x514910771af9ca656af840dff83e8264ecf986ca' +url = 'https://etherscan.io/token/'+chainlink+'?a=' +whale = { + '0x75398564ce69b7498da10a11ab06fd8ff549001c': 0, + '0x5560d001f977df5e49ead7ab0bdd437c4ee3a99e': 0, + '0xbe6977e08d4479c0a6777539ae0e8fa27be4e9d6': 0, + '0xe0362f7445e3203a496f6f8b3d51cbb413b69be2': 0, + '0xdad22a85ef8310ef582b70e4051e543f3153e11f': 0, + '0xf37c348b7d19b17b29cd5cfa64cfa48e2d6eb8db': 0 +} +full = "50,000,000" +prevWhale = whale.copy() + +def startDailyCheckup(): + updateQuantities() + prevWhale = whale.copy() + while True: + checkDaily(total()) + later = datetime.datetime.now() + datetime.timedelta(days=1) + pause.until(later) + +def startDumpWatcher(): + updateQuantities() + prevWhale = whale.copy() + while True: + updateQuantities() + dumpedAmount = checkDumpAmount() + if dumpedAmount > 0: + dumpedWallet = checkDumpWallet() + alert(dumpedAmount, dumpedWallet) + prevWhale = whale.copy() + time.sleep(5) + +def checkDumpAmount(): + dumped = 0 + for w in whale.keys(): + if whale[w] < prevWhale[w]: + dumped = dumped +(prevWhale[w] - whale[w]) + return dumped + +def checkDumpWallet(): + dumped = [] + count = 1 + for w in whale.keys(): + if whale[w] < prevWhale[w]: + dumped.append(str(count)) + count = count + 1 + return dumped + +def alert(dumpedAmount, dumpedWallet): + dumpedAmount = "{:,}".format(int(dumpedAmount)) + text = "😱 Sergey is dumping "+ str(dumpedAmount) +" links from wallet #"+','.join(dumpedWallet) +"!\n\n" + texts = [] + count = 1 + for w in whale.keys(): + if str(count) in dumpedWallet: + texts.append("☑️ Wallet #"+str(count)+"\n"+url+w+"\n"+"("+"{:,}".format(int(whale[w]))+"/"+full+")\n") + count = count + 1 + texts = "\n".join(texts) + text = text + texts + + bot.sendMessage(chat_id=chatid, text=text) + print(text) + +def checkDaily(total): + total = "{:,}".format(int(total)) + text = "🤓 Daily check up: Total of " + total + " links.\n\n" + texts = [] + count = 1 + for w in whale.keys(): + texts.append("☑️ Wallet #"+str(count)+"\n"+url+w+"\n"+"("+"{:,}".format(int(whale[w]))+"/"+full+")\n") + count = count + 1 + texts = "\n".join(texts) + text = text + texts + bot.sendMessage(chat_id=chatid, text=text) + print(text) + +def total(): + total = 0 + for w in whale.keys(): + total = whale[w] + total + return total + +def updateQuantities(): + for w in whale.keys(): + r = requests.get('https://api.etherscan.io/api?module=account&action=tokenbalance&contractaddress='+chainlink+'&address='+w+'&tag=latest&apikey='+apikey) + time.sleep(0.5) + whale[w] = (float(r.json()['result']) * 0.000000000000000001) + + +class DumpWatcher(Thread): + def __init__(self): + Thread.__init__(self) + self.daemon = True + self.start() + def run(self): + startDumpWatcher() + +class DailyCheckup(Thread): + def __init__(self): + Thread.__init__(self) + self.daemon = True + self.start() + def run(self): + startDailyCheckup() + +DumpWatcher() +DailyCheckup() +while True: + pass diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..8995fe8 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,13 @@ +APScheduler==3.6.3 +certifi==2020.12.5 +chardet==4.0.0 +idna==2.10 +pause==0.3 +python-telegram-bot==13.3 +pytz==2021.1 +requests==2.25.1 +requests-cache==0.5.2 +six==1.15.0 +tornado==6.1 +tzlocal==2.1 +urllib3==1.26.3