async def _send_album(self: 'TelegramClient', entity, files, caption='',
formatting_entities=None,
progress_callback=None, reply_to=None,
parse_mode=(), silent=None, schedule=None,
supports_streaming=None, clear_draft=None,
force_document=False, background=None, ttl=None):
formatted_entities
result = []
while file:
result += await self._send_album(
entity, file[:10], caption=captions[:10], formatting_entities=formatting_entities,
progress_callback=used_callback, reply_to=reply_to,
parse_mode=parse_mode, silent=silent, schedule=schedule,
supports_streaming=supports_streaming, clear_draft=clear_draft,
force_document=force_document, background=background,
)
file = file[10:]
captions = captions[10:]
sent_count += 10
return result
formatted_entities
к первому сообщению, если оно содержит текст:if captions and captions[0]:
captions[0] = (captions[0][0], formatting_entities)
getpass.getpass()
не работает в консоли PyCharm в которой запускается бот, на этом месте программа и зависает.password: typing.Union[typing.Callable[[], str], str] = lambda: getpass.getpass('Please enter your password: '),
наpassword: typing.Union[typing.Callable[[], str], str] = lambda: input('Please enter your password: '),
start()
, то он должен работать, НО при проверке кода, внутри того же файла, атрибут password
почему-то всеравно остаётся lambda-функцией. Позже попробую найти почему так и как это исправить. hours = n % (60 * 24) // 60
minutes = n % 60
@router.message(Reg.number)
async def two_three(message: Message, bot: Bot, state: FSMContext):
await state.update_data(number=message.text)
data=await state.get_data()
await bot.send_message(chat_id='нужный айди', text=f'Спасибо, регистрация завершена. \n Имя: {data["name"]} \n Номер: {data ["number"]}')
await state.clear()
from run import bot
await bot.answer_callback_query(callback_query_id=cmd.id, text="Уведомление", show_alert=True)
await callback_query.answer("Уведомление", show_alert=True)
import string
def is_russian(text):
alpha = "абвгдеёжзиклмнопрстуфхцчшщъыьэюя"
new_text = text.translate(str.maketrans('', '', string.punctuation)).lower().replace(' ', '')
rulet = 0
for letter in new_text:
if letter in alpha:
rulet += 1
# Если больше или равно 70%
if rulet/len(new_text) >= 0.7:
return(True)
else:
return(False)
good_text = "Какой-то текст, со знаками препинания, конечно же, sorry!"
bad_text = "Some english text, isn't russian."
secret = "Люблю Gucci"
print(is_russian(good_text)) #вернёт True
print(is_russian(bad_text)) #вернёт False
print(is_russian(secret)) #вернёт False
s = r"С:\User\Users\Programs\program.py"
print(s[:s.rindex("\\")+1])
description
в твоём случае это всё ещё список объектов супа. К ним можно/нужно применить метод text
, чтобы получить именно текстовую составляющую.import requests
from bs4 import BeautifulSoup
url = "http://www.swhl.ru/page/1018390"
r = requests.get(url)
soup = BeautifulSoup(r.content, "lxml")
description = soup.find_all("div", class_="page-text")
for element in description:
print(element.text)
orders = [[1, "first", "order"], [2, "second", "order"], [3, "third", "order"], [4, "fourth", "order"]]
order = int(input("Введите номер заказа: "))
for line in orders:
if line[0] == order:
print(*line[1:])
orders = [["1", "first", "order"], ["2", "second", "order"], ["3", "third", "order"], ["4", "fourth", "order"]] #первый элемент - строка
order = input("Введите номер заказа: ") #не int
for line in orders:
if str(line[0]) == order: #если не преобразовывать список, можно здесь
print(*line[1:])
import random
from random import randint
a = randint(1,5)
while True:
b = int(input("Веедите число от одного до пяти!"))
if b == a:
print("Число верное!")
break
else:
print("Число неверное!")
dict = {
"a": [131, 531],
"b": [842, 612],
"c": [516, 19]
}
float_nums = []
for value in dict.values():
for num in value:
float_nums.append(float(num))
a = min(float_nums)
b = max(float_nums)
a_index = []
b_index = []
for key, values in dict.items():
if a in values:
a_index.append(key)
a_index.append(values.index(a))
if b in values:
b_index.append(key)
b_index.append(values.index(b))
print(a, *a_index)
print(b, *b_index)
print(f”Пропускаем уже обработанное message _id={msg.id}”)
async def dl_last_photo(target): #передаём в функцию ID или Username чата
async for msg in app.get_chat_history(target, limit = 50, offset_id = -1): #ищем в истории с конца, обрабатываем 50 сообщений
if msg.photo: #если есть фото
print(msg.photo.file_id) #в консоль выводим ID - не обязательно
await app.download_media(msg.photo) #скачиваем фото из сообщения в стандартный каталог (папка_бота/downloads)
Выдаёт ошибку: if (msg.from_user is None and msg.forward_from_chat.id == public.id):
AttributeError: ‘NoneType’ object has no attribute ‘I’d’
if (msg.from_user is None) # если сообщение не имеет автора
# и это репост из паблика (проверка по id)
any_sender_id = message.from_user.id if message.from_user else message.sender_chat.id #вытаскиваем ID
if any_sender_id == public.id: #проверяем что это нужный паблик
#дальше твоя логика
any_sender_id = None #объявляем переменную для хранения ID
if message.from_user: #если у нас есть параметр from_user
any_sender_id = message.from_user.id #присваеваем ID юзера
else: #иначе
any_sender_id = message.sender_chat.id #присваеваем ID канала или чата
if any_sender_id == public.id: #проверяем что это нужный паблик
#дальше твоя логика