.
from aiogram import Bot, Dispatcher, executor, types
from aiogram.types.web_app_info import WebAppInfo
import json
bot = Bot('some id')
dp = Dispatcher(bot)
url1 = 'http://gmashtalyar.ru'
url11 = 'https://fintechdocs.ru'
url2 = 'https://simpleboard.ru'
url4 = 'https://gmashtalyar.github.io/web_telegram/index.html'
url41 = 'https://gmashtalyar.github.io/web_telegram/index3.html'
@dp.message_handler(commands=['start'])
async def start(message: types.Message):
"""
ReplyKeyboardMarkup to get data from the app;
InlineKeyboardMarkup to send data to the app
"""
# markup = types.InlineKeyboardMarkup()
markup = types.ReplyKeyboardMarkup()
markup.add(types.KeyboardButton('Открыть приложение', web_app=WebAppInfo(url=url4)))
# markup.add(types.InlineKeyboardButton('Открыть приложение', web_app=WebAppInfo(url=url4)))
await message.answer('Добрый день', reply_markup=markup)
@dp.message_handler(content_types=['web_app_data'])
async def web_app(message: types.Message):
res = json.loads(message.web_app_data.data)
await message.answer(f'Name: {res["name"]}. Email: {res["email"]}. Phone: {res["phone"]}.')
executor.start_polling(dp)
.
from aiogram import Bot, Dispatcher, executor, types
from aiogram.types.web_app_info import WebAppInfo
from aiogram.types import InputFile
import json
import pandas as pd
from pandas import read_excel
from datetime import datetime
import ccxt, yfinance
import pandas_ta as ta
import pandas as pd
def get_data():
exchange = ccxt.binance()
bars = exchange.fetch_ohlcv('ETH/USDT', timeframe='5m', limit=500)
df = pd.DataFrame(bars, columns=['time', 'open', 'high', 'low', 'close', 'volume'])
adx = df.ta.adx()
macd = df.ta.macd()
rsi = df.ta.rsi()
df = pd.concat([df, adx, macd, rsi], axis=1)
last_row = df.iloc[-1]
if last_row['ADX_14'] >= 25:
if last_row['DMP_14'] > last_row['DMN_14']:
message = f"STRONG UPTREND: The ADX is {last_row['ADX_14']:.2f}"
print(message)
if last_row['DMN_14'] > last_row['DMP_14']:
message = f"STRONG DOWNTREND: The ADX is {last_row['ADX_14']:.2f}"
print(message)
if last_row['ADX_14'] < 25:
message = f" NO TREND: The ADX is {last_row['ADX_14']:.2f}"
print(message)
return message
bot = Bot('some id')
dp = Dispatcher(bot)
@dp.message_handler(commands=['start'])
async def start(message: types.Message):
await message.answer('Инструкция:\n\n'
'Нажмите команду /fx \n\n')
@dp.message_handler(commands=['fx'])
async def download(message: types.Message):
data = get_data()
await message.answer(data)
executor.start_polling(dp)
.
from aiogram import Bot, Dispatcher, executor, types
from aiogram.types.web_app_info import WebAppInfo
from aiogram.types import InputFile
import json
from reestr import format_zakupki, format_zakupki_2
import pandas as pd
from openpyxl import load_workbook
from pandas import read_excel
from datetime import datetime
from perekup import perekup
from factoring import add_factoring
from novostal_reestr import get_reestr
from oper_expenses import oper_exp
bot = Bot('some id')
dp = Dispatcher(bot)
@dp.message_handler(commands=['start'])
async def start(message: types.Message):
await message.answer('Инструкция реестра платежей:\n\n'
'1) Загрузите в чат-бот бюджет закупок на месяц\n\n'
'2) Загрузите в чат-бот платежи сегодняшнего дня\n\n'
'3) Нажмите команду /reestr , чтобы создать реестр платежей закупок\n\n'
'4) Сообщите финанситам о готовности реестра закупок\n\n'
'5) Загрузите "Заявки на расходование ДС" \n\n')
@dp.message_handler(commands=['reestr'])
async def download(message: types.Message):
segodna = datetime.today().strftime('%Y-%m-%d')
add_factoring()
get_reestr()
# document = open(f'input3/Бюджет закупок {segodna}.xlsx', 'rb')
document = open(f'input3/Реестр Ариэль Металл {segodna}.xlsx', 'rb')
await message.answer('Бюджет закупок готов.\n\n'
'Пожалуйста, сообщите финанситам, что он готов.\n\n'
'Ниже вы можете посмотреть на реестр платежей:')
await bot.send_document(message.chat.id, document=document)
@dp.message_handler(content_types=types.ContentType.DOCUMENT)
async def scan_message(message: types.Message):
segodna = datetime.today().strftime('%Y-%m-%d')
await message.document.download(destination_file=f'input/Закупки_{segodna}.xlsx')
try:
format_zakupki_2()
await message.answer('Бюджет закупок получен')
except:
try:
perekup()
await message.answer('Бюджет перекупа получен')
except:
try:
await message.answer('Бот думает, дайте ему две минутки')
oper_exp()
document = open(f'input3/Реестр Ариэль Металл {segodna}.xlsx', 'rb')
await message.answer('Ниже вы найдете реестр платежей:')
await bot.send_document(message.chat.id, document=document)
except:
await message.answer('Вышла какая-то ошибка. Обратитесь к Геннадию.\n\n'
'Или попробуйте запустить процесс снова, с самого начала :) ')
executor.start_polling(dp)