исправь код так, чтобы в списке my_photos и message_list не повторялись элементы import random
import vk_api
import requests
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
from vk_api.utils import get_random_id
from bs4 import BeautifulSoup
import re

# Авторизуемся как сообщество
vk_session = vk_api.VkApi(token='vk1.a.KdAkdaN3v-HPcxH8O63IhIfGl_n4U5wby3BzjOYIWthbOvqrajoHJGhKaDb9w9grxESWO7S6en5YKvWqPimOKNtAPBrM8oonxHQ7fCq-FEPsAY-w4-n9x21zS4-3fIqXYQ67QjTFtQqRL6A48x_MUbt0AOgcyyBfbenQnHH-YQeQBaAbKe96UKSinf3gB6kP06eCA9VUDgP31DL9GOC4FQ')
vk = vk_session.get_api()
longpoll = VkBotLongPoll(vk_session, '220038884')

# Функция для отправки фото в сообщении
def send_photo(peer_id, photos, message):
    # Список для хранения идентификаторов фото
    attachments = []
    # Перебираем ссылки на фото
    for photo in photos:
        # Скачиваем фото по ссылке
        response = requests.get(photo)
        # Открываем файл в бинарном режиме для загрузки на сервер ВК
        with open('photo.jpg', 'wb') as file:
            file.write(response.content)
        # Получаем адрес сервера для загрузки фото
        upload_url = vk.photos.getMessagesUploadServer()['upload_url']
        # Загружаем фото на сервер и получаем ответ
        response = requests.post(upload_url, files={'photo': open('photo.jpg', 'rb')}).json()
        # Сохраняем фото в альбоме сообщества и получаем данные о фото
        photo_data = vk.photos.saveMessagesPhoto(**response)[0]
        # Формируем идентификатор фото в нужном формате
        attachment = f'photo{photo_data["owner_id"]}_{photo_data["id"]}'
        # Добавляем идентификатор в список
        attachments.append(attachment)
    # Отправляем сообщение с фото
    vk.messages.send(
        peer_id=peer_id,
        message=message,
        attachment=','.join(attachments),
        random_id=get_random_id()
    )

# Основной цикл бота
for event in longpoll.listen():
    # Если пришло новое сообщение
    if event.type == VkBotEventType.MESSAGE_NEW:
        # Получаем текст сообщения и id чата
        text = event.obj.message['text']
        peer_id = event.obj.message['peer_id']
        # Если текст сообщения равен "пост"
        if text.lower() == 'пост':
            message_list = []
            my_photos =[]
            with open("names.txt") as f:
                names = f.read().split(";")  # разделитель - запятая
                subset = random.sample(names, 5)  # выбираем 5 случайных названий

            for name in subset:

                url = f'https://www.poizon.us/search?q={name}&options%5Bprefix%5D=last'
                response = requests.get(url)

                soup = BeautifulSoup(response.text, 'html.parser')

                link = soup.select_one('a.full-unstyled-link')
                if link is not None:
                    href = link.get('href')
                    full_link = 'https://www.poizon.us' + href
                else:
                    print(f'не нашли {name}')
                    continue

                response = requests.get(full_link)

                soup = BeautifulSoup(response.text, 'html.parser')

                photo_selector = '#Thumbnail-template--16663852253403__main-1'
                photo_links = soup.select_one(photo_selector).get('srcset').split(', ')
                photo_link = photo_links[0].split(' ')[0]

                size_selector = 'div.product-popup-modal__content-info:nth-child(1) > variant-radios:nth-child(1) > fieldset:nth-child(2) > label:nth-child(3) > div:nth-child(1)'
                price_selector = 'div.product-popup-modal__content-info:nth-child(1) > variant-radios:nth-child(1) > fieldset:nth-child(2) > label:nth-child(3) > div:nth-child(2)'

                size_element = soup.select_one(size_selector)
                if size_element is not None:
                    size = size_element.text.strip()
                else:
                    size = 'Размер не найден'

                price_element = soup.select_one(price_selector)
                if price_element is not None:
                    price = price_element.text.strip()
                else:
                    price = 'Цена не найдена'

                name_element = soup.select_one('div.product__title > h1:nth-child(1)')
                if name_element is not None:
                    name = name_element.text.strip()
                else:
                    name = 'Название не найдено'

                info_element = soup.select_one(
                    '#ProductAccordion-ea1014ee-ae9d-4eee-b23c-d2dfe9ba75b4-template--16663852253403__main')
                if info_element is not None:
                    info = info_element.text.strip()
                else:
                    info = 'Информация не найдена'
                urls = photo_link.replace("//", "https://")
                urlm = urls + '100'
                message = f'\nНазвание: {name}\nРазмер: {size}\nЦена: {price}\n'
                my_photos.append(urlm)
                message_list.append(message)



            # Задаем список ссылок на фото (можно изменить на свои)
            photos = my_photos
            # Задаем текст сообщения (можно изменить на свой)
            message = message_list
            # Вызываем функцию для отправки фото в сообщении
            send_photo(peer_id, photos, message)