Этот вопрос закрыт для ответов, так как повторяет вопрос Как получить все фотографии сообщества ВКонтакте?

Как получить альбом через VK API на питоне?

Мой код ниже. Ввожу в album_name_or_id нужный и, самое главное, рабочий альбом, а мне пишет, что его нет. Может быть ошибка в коде или я где-то туплю? Или ошибся с отрицательными/положительными значениями id сообществ? Новичок в программировании, поэтому прошу указать на ошибку и предоставить пути решения.

Сам нужный мне альбом: https://vk.com/album-209788048_282527806

import vk_api
import random
import time

# Авторизация в VK API
vk_session = vk_api.VkApi(token='my-token')
vk = vk_session.get_api()

# ID сообществ, из которых берем фотографии и в которые выкладываем фотографии
source_group_id = 209788048
target_group_id = 221019369

# название или ID альбома, из которого берем фотографии
album_name_or_id = '282527806'

# получение списка альбомов целевого сообщества
albums = vk.photos.getAlbums(owner_id=-target_group_id)['items']
# поиск нужного альбома по названию или ID
for album in albums:
if album['title'] == album_name_or_id or album['id'] == album_name_or_id:
album_id = album['id']
break
else:
print(f'Альбом "{album_name_or_id}" не найден')
exit()

# получение списка фотографий из альбома источника
photos = vk.photos.get(owner_id=-source_group_id, album_id=album_id, count=1000)['items']
# бесконечный цикл
while True:
# выбор случайной фотографии
photo = random.choice(photos)

# загрузка фотографии на сервер VK
upload_url = vk.photos.getUploadServer(group_id=target_group_id)['upload_url']
photo_data = vk_session.http.post(upload_url, files={'photo': ('photo.jpg', photo['sizes'][-1]['url'])}).json()

# сохранение фотографии в альбоме целевого сообщества
result = vk.photos.save(group_id=target_group_id, album_id=album_id, server=photo_data['server'], photo=photo_data['photo'], hash=photo_data['hash'])[0]

# публикация записи с фотографией
vk.wall.post(owner_id=-target_group_id, from_group=1, attachments=f'photo{result["owner_id"]}_{result["id"]}')

# задержка на 1 час
time.sleep(3600)


Тех. поддержка, естественно, не помогла, лишь сюда направила. Даже от ChatGPT было больше пользы, но проблему всё-таки не решил
  • Вопрос задан
  • 270 просмотров
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы