def on(self, condition):
if isinstance(condition, list):
conditions = [el.lower() for el in condition]
predicate = lambda text: any(condition in text for condition in conditions)
elif isinstance(condition, str):
condition = condition.lower()
predicate = lambda text: condition in text
Following a link with the start parameter will open a one-on-one conversation with the bot, showing a START button in the place of the input field. If the startgroup parameter is used, the user is prompted to select a group to add the bot to. As soon as a user confirms the action (presses the START button in their app or selects a group to add the bot to), your bot will receive a message from that user in this format:
/start PAYLOAD
data = {'username': (None, 'login'),
'password': (None, 'pass'),
'return_url': (None, '/')}
authorization = session.post('https://riso.sev.gov.ru/ajaxauthorize', files=data)
помощью бота прочитать сообщения от бота
if r.status_code != 200:
. И если статус код не 200, то отправлять запрос на эту же страницу заново, пока она не ответ нормально.response = bot.getUpdates()
for resp in response:
print(resp['message'].get('text'))
driver.find_element_by_xpath("//span[text()='Показать еще']")
from selenium.common.exceptions import NoSuchElementException
search = driver.find_element_by_xpath("//input[@class='input-smart__input']")
search.send_keys('Иван')
button = driver.find_element_by_xpath("//div[@class='s-btn']")
button.click()
while True:
while True:
# Если данные все еще загружаются, классы кнопки меняются на `s-btn__loader`
if driver.find_elements_by_class_name('s-btn__loader'):
time.sleep(5)
else:
break
try:
load_more_btn = driver.find_element_by_xpath("//span[text()='Показать еще']")
except NoSuchElementException:
print('Загрузили страницу до конца')
break
load_more_btn.click()
time.sleep(5)
proxies = {
'http': 'http://10.10.1.10:3128',
'https': 'http://10.10.1.10:1080',
}
import telebot
token = 'XXX'
channel = '@XYZ'
bot = telebot.TeleBot(token)
print(bot.get_chat_member_count(channel))
from telethon import TelegramClient, sync
from telethon.tl.functions.channels import GetFullChannelRequest
api_id = ZZZ
api_hash = 'YYY'
channel_name = 'XXX'
client = TelegramClient('session_name', api_id, api_hash)
client.start()
channel_connect = client.get_entity(channel_name)
channel_full_info = client(GetFullChannelRequest(channel=channel_connect))
print(channel_full_info.full_chat.participants_count)
вроде параметр name есть
i["service"]
, и вот вывод у него следующий: {'name': 'telnet', 'product': 'Linux telnetd', 'ostype': 'Linux', 'method': 'probed', 'conf': '10'}
name
лежит не в словаре i
, а в i['service']
. Так что правильно будет i['service']['name']
@bot.callback_query_handler(func=lambda call: call.data != "short")
def callback_inline(call): #функция обработчик callback данных пользовательского выбора
try:
if call.message:
if call.data == "Yes": #если выбор "Да" то запускается функция со второй клавиатурой
return response_data(call.message.chat.id)
elif call.data == "No":
bot.send_message(call.message.chat.id, "Попробуйте ещё раз")
except Exception as e:
print(repr(e))
call.data == ‘long’