Покажу вам вырезки кода, чтобы вы поняли суть.
import vk_api, re, urllib.request, urllib.parse # другие библиотеки ...
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
bot_session = vk_api.VkApi(token = 'token')
vk = bot_session.get_api()
# другие методы ... #
def get_video_hash(request):
query_string = urllib.parse.urlencode({"search_query" : request})
html_content = urllib.request.urlopen("http://www.youtube.com/results?" + query_string)
search_results = re.findall(r'href=\"\/watch\?v=(.{11})', html_content.read().decode())
return search_results
def send(user_id = None, chat_id = None, peer_id = None, message = None, attachment = None):
vk.messages.send(
user_id = user_id,
chat_id = chat_id,
peer_id = peer_id,
message = message,
attachment = attachment,
random_id = 0
)
# ... другие методы #
# обработчик ... #
if arg != None:
hash_list = get_video_hash(arg)
if len(hash_list) == 0:
send(peer_id = self.receiver, message = f'{name}, по запросу "{arg}" ничего не найдено ')
else:
send(peer_id = self.receiver, attachment = [{'type': 'video', 'video': {...}}])
# ... обработчик #