if event.from_user:
после команды / строки if event.type == VkEventType.MESSAGE_NEW:
), в интернете примеров куча.from vk_api.longpoll import VkLongPoll, VkEventType
vk_session = vk_api.VkApi(token="токен от страницы")
longpoll = VkLongPoll(vk_session)
vk = vk_session.get_api()
def send_msg(peer_id: int, message: str, attachment: str = ""):
return vk.messages.send(**locals(), random_id=0)
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
# если вообще на любое сообщение, то убираем строку if event.text == 'текст который пишет пользователь':
if event.text == 'текст который пишет пользователь':
send_msg(event.peer_id, 'ответ бота')
[id12345|Вася Пупкин]
def get_user_id(pattern: str) -> int:
if "[id" in pattern:
return int(pattern.split("|")[0].replace("[id", ""))
def get_user_id(pattern: str) -> int:
if "vk.com/" in pattern:
domen = pattern.split("/")[-1]
return vk.method("users.get", {"user_ids": domen})[0]["id"]
users = vk.method("messages.getConversationMembers", {("peer_id": event.obj.peer_id})["profiles"]
user = random.choice(users)["first_name"]
import vk_api
vk_session = vk_api.VkApi(token='токен от стр')
vk = vk_session.get_api()
peer_id = # тут чат айди + 2000000000. Пример - 2000002203, где 2203 - чат айди
my_id = # айди страницы, которая будет кикать
users = vk.messages.getConversationMembers(peer_id=peer_id)['items']
for user in users:
if user['member_id'] != my_id:
vk.messages.removeChatUser(chat_id=peer_id - 2000000000, member_id=user['member_id'])
import re
myString = "This is a link https://vk.com" # тут подставляете строку из message
result = re.search("(?P<url>https?://[^\s]+)", myString).group("url")
if result:
print(f"Обнаружена ссылка {result}. Игнорирую сообщение.")
if not result:
# выполнение кода
msg = vk.messages.getById(message_ids=string)['items'][0] # тут подставляете строку из message вместо string
if 'reply_message' in msg:
print(f"Обнаружено пересланное сообщение. Игнорирую.")
else:
# выполнение кода
if len(event.attachments) >= 1:
if 'wall' in event.attachments['attach1_type']:
print(f"Обнаружен репост. Игнорирую.")
else:
# выполнение кода
if event.user_id == ваш айди:
#выполняем код
if event.from_me:
#выполняем код
if gun[0] == "123":
users = vk.messages.getConversationMembers(peer_id=event.peer_id)["profiles"]
user_1 = random.choice(users)["first_name"]
user_2 = random.choice(users)["first_name"]
send_msg(id, f'лох - {user_1}, дебил - {user_2}')
if event.object.text == "кик":
vk.method("messages.removeChatUser", {
"chat_id": event.object.peer_id - 2000000000,
"member_id": event.obj.reply_message['from_id']})
def get_user(pattern: str) -> int:
if "[id" in pattern:
return int(pattern.split("|")[0].replace("[id", ""))
if "vk.com/" in pattern:
domen = pattern.split("/")[-1]
print(domen)
return vk.method("users.get", {"user_ids": domen})[0]["id"]
text = event.obj["text"].split(' ')
if (len(text) == 2) and text[0] == "кик":
vk.method("messages.removeChatUser", {"chat_id": event.chat_id, "member_id": get_user(text[1])})
data.json
и заполните его так{
"conversations": [
]
}
import vk_api
import json
vk_session = vk_api.VkApi(token='ТОКЕН')
vk = vk_session.get_api()
index = 1
while True:
try:
chat_info = vk.messages.getChat(chat_id=index)
data = json.load(open('data.json', encoding='utf-8'))
srt_info = {'title': f'{chat_info["title"]}', 'id': f'{chat_info["id"]}'}
data['conversations'].append(srt_info)
with open('data.json', 'w', encoding='utf-8') as file:
json.dump(data, file, indent=2, ensure_ascii=False)
file.close()
index += 1
except Exception as e:
print(repr(e))
vk.messages.markAsUnreadConversation(peer_id=пир айди)
def get_name(uid: int) -> str:
data = vk.method("users.get", {"user_ids": uid})[0]
return "{} {}".format(data["first_name"], data["last_name"])
full_name = get_name(тут юзер айди)